1 / 22

PHP: warunki, pętle, switch, break, continue

Technologie internetowe. PHP: warunki, pętle, switch, break, continue. Instrukcje warunkowe – stosuje się gdy chcemy by fragment kodu został wykonany po spełnieniu warunku if (warunek) instrukcje; if (warunek) Instrukcja1; else Instrukcja2; if (warunek1) { instrukcje1; }

sian
Download Presentation

PHP: warunki, pętle, switch, break, continue

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Technologie internetowe PHP:warunki,pętle,switch, break, continue

  2. Instrukcje warunkowe – stosuje się gdy chcemy by fragment kodu został wykonany po spełnieniu warunku if (warunek) instrukcje; if (warunek) Instrukcja1; else Instrukcja2; if (warunek1) { instrukcje1; } elseif (warunek2) instrukcja2; (…) else instrukcja3; Przydatne uzupełnienie instrukcji warunkowej if stanowi funkcja isset(), sprawdzająca czy zmienna została ustawiona: if (isset ($submit)) // operacje po naciśnięciu przycisku submit;else // ponowne wyświetlenie formularza;

  3. Pętle – stosuje się aby fragment kodu wykonać wiele razy Pętla while do while (warunek) { Instrukcje; } Przed każdą iteracją bloku kodu wewnątrz instrukcji while, sprawdzany jest warunek. Jeżeli wyrażenie warunkowe jest prawdziwe - blok kodu umieszczony wewnątrz instrukcji zostanie wykonany. Jeśli natomiast wyrażenie przyjmie wartość false, pętla zakończy się, a wykonanie skryptu zostanie kontynuowane od pierwszej instrukcji umieszczonej po pętli while.Sekwencja kroków pętli while: Sprawdzenie wyrażenia warunkowego Jeśli wyrażenie = false  krok 5 Wykonanie bloku instrukcji Krok 1 Zakończenie pętli

  4. Pętla do … while do { instrukcje; } while (warunek) Wyrażenie warunkowe sprawdzane jest na końcu pętli – po wykonaniu bloku instrukcji. Sekwencja kroków pętli do … while: 1. Wykonanie bloku instrukcji2. Sprawdzenie wyrażenia warunkowego3. Jeżeli warunek prawdziwy  krok 14. Zakończenie pętli, wykonanie kolejnej instrukcji programu.

  5. Pętla FOR for (wyr_startowe; wyr_warunkowe; wyr_iteracyjne) { instrukcje } wyr_startowe – jest wykonane raz gdy program dotrze do instrukcji for wyr_warunkowe – sprawdzane przed każdą iteracją pętli,jeśli warunek = false – pętla zostaje przerwana wyr_iteracyjne – jest wykonywane po każdej iteracji pętli, służy do modyfikacji zmiennych zdefiniowanych w wyrażeniu warunkowym Uwaga: wyrażenia mogą być dowolnie skomplikowane, można użyć kilku instrukcji startowych, warunków i wyr. iteracyjnych, oddzielając je przecinkami for ($x = 0, $y = -5; $x < 10 && $y < $z; $x++, $y+=3)

  6. Sekwencja kroków pętli for: 1. Wykonanie wyrażenia startowego 2. Sprawdzenie wyrażenia warunkowego 3. Jeżeli warunek jest fałszywy  krok 7 4. Wykonanie bloku instrukcji pętli 5. Wykonanie wyrażenia iteracyjnego 6. krok 2 7. Zakończenie instrukcji for; wykonanie kolejnej instrukcji programu

  7. Instrukcje break i continue Wykonanie pętli można w każdym momencie zakończyć. Służy do tego instrukcja break: $a=0; while($a<10) { $a++; echo $a; if($a==3) break; } Ta pętla nie wykona się 10 razy - gdy $a osiągnie wartość 3, wykonanie pętli zostanie przerwane.

  8. Można też przejść do następnego powtórzenia pomijając pozostałe instrukcje ciała pętli - służy do tego instrukcja continue: $a=0; while($a<10) { $a++; if($a==3) continue; echo("aaa"); /* ta instrukcja wykona się tylko gdy $a nie jest równe 3 */ }

  9. Instrukcja switch Czasem zmienna może mieć jedną z kilku wartości, w zależności od których należy podjąć odpowiednią akcję. Można to zrobić stosując instrukcję if: if($a==1) { echo("a jest równe 1"); } if($a==3) { echo("a jest równe 3"); } if($a==11) { echo("a jest równe 11"); }

  10. Wygodniejsze jest zastosowanie instrukcji switch: switch($a) { case 1: echo("a jest równe 1"); break; case 3: echo("a jest równe 3"); break; case 11: echo("a jest równe 11"); break; }

  11. Wybrane funkcje matematyczne

  12. Wybrane funkcje matematyczne

  13. Wybrane funkcje obsługi łańcuchów znaków

  14. Operator kontroli błędów: znak małpy (@) Jeśli znak ten zostanie postawiony przed dowolnym wyrażeniem w PHP, jakiekolwiek powiadomienia o błędach wygenerowane przez to wyrażenie zostaną pominięte (nie będą wyświetlone). Jeśli mechanizm track_errors został włączony, jakiekolwiek powiadomienie o błędzie zostanie zapisane do zmiennej globalnej $php_errormsg. Zawartość tej zmiennej jest nadpisywana przy każdym błędzie, więc po wystąpieniu kolejnego błędu w skrypcie, informacja o poprzednim błędzie jest tracona. Operator @ działa tylko nawyrażeniach. Jeśli da się pobrać wartość czegoś, można postawić operator @ przed tym czymś. Można postawić @ przed zmiennymi, wywołaniami funkcji, instrukcjami include(), stałymi, itp. Nie można stawiać @ przed definicjami funkcji bądź klasy, lub strukturami warunkowymi, takimi jak if lub foreach, itd. $my_file = @file ('nieistniejący_plik') or die ("Błąd przy otwieraniu pliku: treść błędu: '$php_errormsg'");

  15. Składnia alternatywna Dla: if, while, for, foreach i switch. Podstawowa forma składni alternatywnej polega na zamianie nawiasu otwierającego na dwukropek (:), a nawiasu zamykającego na odpowiednie słowo: endif;, endwhile;, endfor;, endforeach; lub endswitch;. <?php if ($a == 5): ?> A jest równe 5 <?php endif; ?>

  16. formularze, poczta,

  17. Obsługa formularzyNależy najpierw odpowiednio przygotować formularz. W znaczniku FORM w parametrze ACTION należy podać adres dokumentu PHP mającego obsłużyć ten formularz. Parametr METHOD może mieć wartość POST lub GET - obie metody są obsługiwane przez PHP. Jednak należy pamiętać, że formularze wysyłane przez GET mają ograniczoną długość. Należy pamiętać o zdefiniowaniu nazw wszystkich pól formularza z których skrypt ma skorzystać. Przykład: <FORM ACTION="skrypt.php" METHOD="post"> <INPUT TYPE="text" NAME="tekst"> <input type="submit" name="x" value="Wyslij"> </FORM>

  18. Jeśli zmienne są globalne ... UWAGA! w php.ini: register_globals = On lub Off w skrypcie od razu będą dostępne zmienne o nazwach takich jak nazwy (name) pól formularza, zawierające ich wartości: Bezpieczniej jest stosować tablicę _POST, uniezależniając się od sytuacji, czy zmienne są globalne czy nie <?php echo($_POST['tekst']); ?> W przypadku pola tekstowego wartością zmiennej będzie wpisany przez użytkownika tekst. Jeżeli pole jest typu CHECKBOX wartością będzie "on" jeżeli pole jest zaznaczone, lub zmienna będzie pusta jeżeli pole nie zostało zaznaczone. Jeżeli w polu typu CHECKBOX podamy parametr VALUE, będzie on użyty zamiast "on". Tak samo wygląda obsługa pola typu RADIO. Wartością pola SELECT będzie wartość parametru VALUE zdefiniowanego w znaczniku OPTION. Przykład: forma.html

  19. Formularze HTML najczęściej zawierają: Metodę Akcję Pola wejściowe Pierwszy wiersz formularza w kodzie HTML może wyglądać następująco: <FORM ACTION=licz.php METHOD=POST> Post - zmienne przekazywane są z formularza z wykorzystaniem superglobalnej tablicy $_POST Get – tablica $_GET. Zapytanie jest dołączone do lokalizatora (adresu) URL Post vs. Get Metoda Post została opracowana do tworzenia nowych zasobów, np. przekazanie formularza zamówienia powoduje wstawienie nowego rekordu do tabeli bazy danych – pojawia się trwały efekt. Metoda Get jest używana gdy żądanie nie powoduje trwałych efektów ubocznych – np. operacje wyszukiwania. Należy jednak uważać: przy stosowaniu get mogą powstać długie adresy, często przekraczające limity przeglądarek czy serwerów.

  20. Metodę POST stosuje się gdy: (Wynikiem żądania są trwałe zmiany || Dane z formularza mogą powodować powstanie długiego adresu URL przy użyciu get || Wysyłane dane nie są zapisane za pomocą siedmiobitowego ASCII.) Metodę GET stosuje się gdy: (Celem żądania jest odszukanie zasobów && W wyniku wykonania żądania nie wystąpią żadne trwałe efekty uboczne && Dane z pól <form> mają w sumie mniej niż 1024 znaki) Get – bezpieczna; Post – niebezpieczna, dokonuje trwałych modyfikacji w serwerze <FORM ACTION="licz.php" METHOD="POST"> Akcja określa skrypt do którego zostaną przesłane dane i który zostanie uruchomiony

  21. <P>Liczba1: <INPUT TYPE="text" NAME="val2" SIZE=10></p> <INPUT TYPE="radio" NAME="calc" VALUE="add"> <INPUT TYPE=submit NAME=Calculate VALUE=Wykonaj> </FORM> Typy pól formularzy HTML: input – różne typy text– jedna linia tekstu; hidden– pole ukryte (umożliwia przesłanie dodatkowych, niewidocznych dla użytkownika danych); password - dla haseł file – do przesyłania plików (upload) submit– przycisk służący do wysyłania danych formularza textarea– wiele wierszy tekstu checkbox– pole wyboru (jeden z dwu); radio– pole wyboru (jeden z wielu); select – menu rozwijane lub lista;

  22. Wysyłanie poczty e-mail Dla systemu Windows w pliku php.ini należy skonfigurować: [mail function] SMTP = ewa.prz.rzeszow.pl//nazwa serwera poczty wychodz. sendmail_from= ty@prz.rzeszow.pl //własny adres Można zastosować funkcję w skrypcie: ini_set('sendmail_from','ty@prz.rzeszow.pl'); Do wysyłania listu elektronicznego za pośrednictwem protokołu SMTP (standardowy protokół wykorzystywany do przesyłania poczty elektronicznej) w najprostszym przypadku wystarczy funkcja mail() : mail (odbiorca, temat, treść);Można również uwzględnić adres nadawcy, wtedy funkcja mail() będzie miała postać: mail (odbiorca, temat, treść, od); mail ("jan@kowalski.com"; "to jest temat wiadomości","to jest treść bardzo krótkiej wiadomości","od:franek@nowak.com")

More Related