|
Podstawowe |
|
|
|
|
Wstęp
Kurs ten ma za zadanie zaznajomić osobę kompletnie nieobeznaną z językiem
PHP na tyle, aby sama była w stanie napisać skrypt o średnim poziomie
złożoności. Nie piszę tutaj jak zainstalować serwer WWW czy dołączyć do
niego obsługę PHP - od tego są inne dokumenty. Kurs w większości jest
uniwersalny - można go stosować do wersji 3 i 4, lecz jeden rozdział (o
sesjach) przeznaczony jest wyłącznie dla PHP4. Mam nadzieję, że osoba
czytająca ten kurs zna język HTML oraz ma jakiekolwiek pojęcie o
programowaniu.
Co to jest PHP
PHP jest językiem skryptowym służącym do rozszerzania możliwości stron
internetowych. Jego składnia jest bardzo podobna do popularnych języków
programowania C/C++, lecz jest bardzo uproszczona - programista PHP
zazwyczaj nie musi przejmować się poprawnością typów zmiennych,
przydzielaniem dla nich pamięci itp. Dodatkowo wbudowana obsługa wielu
popularnych baz danych ułatwia twórcy operacje na tych bazach. Dzięki
połączeniu z biblioteką GD możliwe jest także dynamiczne tworzenie obrazków
GIF (starsze wersje GD) lub PNG (nowsze wersje).
Wstawianie skryptów PHP
Aby plik był rozpoznany przez serwer WWW jako skrypt PHP musi on mieć
odpowiednie rozszerzenie. Rozszerzenia te można zdefiniować w konfiguracji
serwera WWW, ale zazwyczaj jest to .php3 (dla PHP w wersji 3), .php lub php4
(dla PHP w wersji 4) i .phtml (dla PHP w wersji starszej niż 3). Po nadaniu
plikowi takiego rozszerzenia serwer będzie wiedział, że plik ten nie jest
przeznaczony do bezpośredniego wyświetlenia (jak w przypadku plików HTML),
ale że najpierw trzeba go przepuścić przez parser PHP.
Jeśli zwykłemu plikowi HTML nadamy rozszerzenie .php, to zostanie on
prawidłowo wyświetlony, mimo że nie jest to skrypt PHP. Dzieje się tak
dlatego, że parser PHP przetwarzając stronę ma 2 tryby pracy: HTML, gdzie
cała treść jest wyświetlana, bez przetwarzania, i PHP, gdzie treść jest
traktowana jako skrypt do przetworzenia. Do określenia w pliku co jest kodem
HTML a co PHP służą specjalne znaczniki. Początkowo parser jest w trybie
HTML. Aby przejść do trybu PHP można użyć jednego z czterech znaczników:
1. <? echo ("to jest najprostsza metoda, podobna do SGML'u\n"); ?>;
2. <?php echo("jeśli serwujesz pliki XML, użyj tej metody\n"); ?&>;
3. <script language="php">
echo ("niektóre edytory (np. FrontPage) nie lubią przetwarzania
instrukcji");
</script>
4. <% echo ("Możesz też użyć metody podobnej do tej z ASP"); %>
<%= ; # To jest skrót dla "<%echo .." %>;
W powyższych przykładach użyta jest niby-funkcja echo. Niby-funkcja,
ponieważ dla większości normalnych funkcji parametry trzeba podawać w
nawiasach, a w przypadku funkcji echo można je pominąć. "echo" jest po
prostu elementem składni języka. Jak się można łatwo domyślić, służy ona do
wysyłania tekstu podanego jako parametr do przeglądarki użytkownika.
Po przeczytaniu powyższego fragmentu każdy powinien być już gotowy do
napisania programu, jaki każda osoba pisze zaraz po wstępnym zapoznaniu się
z nowym językiem programowania - Hello World!. W przypadku PHP jest to
zadanie uproszczone do minimum. Skrypt Hello World powinien wyglądać tak:
<?php echo 'Hello World!'; ?>
Po zapisaniu tego pliku z odpowiednim rozszerzeniem i umieszczeniu go
odpowiednim miejscu (czyli w katalogu z którego będzie dostęp będzie miał
serwer WWW). Po wejściu na tę stronę z przeglądarki WWW w okienku powinno
być widać tylko napis "Hello World!" (bez cudzysłowów). Jedna uwaga:
polecenie echo nie wysyła znaku końca linii, więc jeśli chcesz, aby po ciągu
znaków (albo w którymkolwiek miejscu tego ciągu) kończyła się linia, w tym
miejscu trzeba wstawić '\n'.
Błędy i debugowanie
Parser PHP podczas wykonywania skryptu sprawdza jego poprawność. Jeśli coś
się nie zgadza, zostaniemy o tym poinformowani. Skrypt będzie jednak
wykonany do miejsca, w którym pojawił się błąd. Przy komunikacie o błędach
podana zostanie informacja o typie błędu, pliku w którym ten błąd zaszedł
oraz linii zawierającej błąd. Najczęściej są to błędy składniowe - brak
średnika na końcu linii, niedomkniętych nawiasach (bardzo częsty błąd przy
złożonych instrukcjach warunkowych), cudzysłowach lub nawiasach klamrowych
kończących blok danych (przy instrukcjach warunkowych, pętlach). Błędy przy
braku zamykających nawiasów klamrowych łatwo można rozpoznać, ponieważ numer
linii zawierającej błąd jest o jeden większa od liczby linii w pliku.
PHP w wersji czwartej nie posiada jako-takiego debuggera. Wersja trzecia
miała możliwość debugowania skryptów po ustawieniu odpowiednich opcji w
konfiguracji PHP, który będzie się łączył z odpowiednim portem podanym w
konfiguracji, na który będą przesyłane dane o błędach. Niektóre edytory
wspomagające tworzenie skryptów PHP (jak np. Quanta+ pod Linuksa) posiadają
wbudowaną obsługę debuggera. Jest to jednak metoda skomplikowana (więcej o
niej w dokumentacji do PHP) i wymaga interwencji administratora serwera (sprawa
jest łatwiejsza jeśli programista jest administratorem). Istnieje metoda
dużo prostsza. Po prostu w kluczowych miejscach skryptu (zazwyczaj tych, w
których skrypt działa nieprawidłowo lub niezgodnie z zamierzeniami) należy
wyświetlić interesujące nas zmienne za pomocą polecenia echo. Można też
skorzystać z instrukcji warunkowych, ale o tym w dalszej części kursu.
Na początek warto jest zapoznać się z informacjami, które wyświetlą się po
użyciu funkcji phpinfo(). Funkcja ta wyświetla wszystkie informacje o
konfiguracji PHP (bardzo przydatne przy poszukiwaniu gdzie powinien
znajdować się plik php.ini) oraz wszystkie zmienne środowiskowe, serwera
oraz przekazane metodami GET, POST, COOKIE oraz sesyjnymi.
|
|
|
|