PHP5_Kompendium_webmastera_php5kw.pdf

(351 KB) Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TRE CI
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
PHP5. Kompendium
webmastera
Autor: Daniel Bargie³
ISBN: 83-7361-697-7
Format: B5, stron: 576
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Jêzyka PHP nie trzeba ju¿ chyba przedstawiaæ ¿adnej osobie zwi¹zanej z bran¿¹
internetow¹. Jeden z najpopularniejszych jêzyków wykorzystywanych do tworzenia
aplikacji internetowych rozwija siê bardzo dynamicznie. W kolejnej jego wersji,
oznaczonej numerem 5, pojawi³o siê wiele udoskonaleñ rozszerzaj¹cych bogate
mo¿liwo ci tej platformy. PHP5 jest jêzykiem obiektowym, zawiera obs³ugê wyj¹tków
i rozbudowane mechanizmy przetwarzania plików w formacie XML. Dziêki tym
funkcjom znacznie zwiêkszy³ siê zakres zastosowañ PHP.
„PHP5. Kompendium webmastera” to ksi¹¿ka opisuj¹ca najnowsz¹ wersjê tego
rodowiska. Przedstawia wszystko, co jest niezbêdne do tworzenia aplikacji
internetowych. Czytaj¹c j¹, dowiesz siê, jak zainstalowaæ PHP na serwerze i stacji
roboczej, poznasz elementy jêzyka i zasady programowania obiektowego.
Nauczysz siê korzystaæ z baz danych i wykorzystywaæ w swoich aplikacjach
pliki XML i mechanizmy szablonów Smarty. Stworzysz tak¿e przyk³adow¹ aplikacjê
internetow¹ — tablicê og³oszeñ.
• Instalacja i konfiguracja PHP w Windows i Linuksie
• Zmienne, operatory i wyra¿enia
• Tablice
• Konstrukcje warunkowe i pêtle
• Elementy programowania obiektowego — klasy, obiekty, w³a ciwo ci i metody
• Wspó³praca aplikacji PHP z bazami danych
• Obs³uga formularzy i stosowanie wyra¿eñ regularnych
• Operacje na plikach i katalogach
• Wykorzystywanie plików w formacie XML
• Mechanizmy obs³ugi wyj¹tków
• Sesje, cookies i nag³ówki HTTP
• Szablony Smarty
Je li chcesz poznaæ jêzyk PHP i napisaæ swoj¹ pierwsz¹ aplikacjê internetow¹,
siêgnij po tê ksi¹¿kê.
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWO CIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Spis treści
Wstęp...................................................................................................................................................................9
Czym jest PHP?................................................................................................................. 9
Jak to działa? ................................................................................................................... 11
Dla kogo jest ta ksią ka................................................................................................... 12
Co mo na znaleźć w ksią ce ........................................................................................... 12
Rozdział 1.
Instalacja i konfiguracja PHP ................................................................................................................. 15
Instalacja w systemie Windows....................................................................................... 15
Instalacja PHP dla serwera IIS .................................................................................. 16
Instalacja PHP5 dla serwera Apache......................................................................... 17
Instalacja w systemie Linux ............................................................................................ 19
Konfigurowanie PHP ...................................................................................................... 22
Rozdział 2.
Podstawy programowania w PHP........................................................................................................25
Składnia........................................................................................................................... 25
Zmienne i stałe w języku PHP......................................................................................... 30
Nazwy zmiennych..................................................................................................... 30
Przypisywanie oraz odczytywanie wartości zmiennych............................................ 31
Typy proste zmiennych ............................................................................................. 35
Definiowanie stałych................................................................................................. 41
Predefiniowane stałe PHP ......................................................................................... 42
Operatory i wyra enia ..................................................................................................... 43
Operatory i wyra enia arytmetyczne......................................................................... 44
Operator tekstowy ..................................................................................................... 47
Operatory binarne ..................................................................................................... 48
Operatory i wyra enia porównania ........................................................................... 49
Operatory logiczne .................................................................................................... 50
Konwersja typów ...................................................................................................... 51
Sterowanie przepływem programu .................................................................................. 54
Instrukcje if, else oraz else if..................................................................................... 55
Pętla warunkowa while ............................................................................................. 58
Pętla warunkowa do ... while .................................................................................... 59
Pętla for..................................................................................................................... 59
4
PHP5. Kompendium webmastera
Instrukcja switch ....................................................................................................... 61
Instrukcje pomocnicze .............................................................................................. 63
Tablice............................................................................................................................. 64
Tablice jednowymiarowe .......................................................................................... 65
Tablice wielowymiarowe .......................................................................................... 67
Pętla foreach.............................................................................................................. 69
Konwersja tablic do zmiennych typów prostych....................................................... 70
Funkcje............................................................................................................................ 71
Argumenty funkcji .................................................................................................... 72
Zwracanie wartości przez funkcję ............................................................................. 75
Zło one definiowanie funkcji.................................................................................... 76
Funkcje wbudowane w PHP ..................................................................................... 78
Zagnie d anie skryptów PHP........................................................................................ 108
Zasięg zmiennych.......................................................................................................... 112
Predefiniowane zmienne PHP ....................................................................................... 115
Zmienna $_SERVER .............................................................................................. 116
Zmienna $_GET...................................................................................................... 118
Referencje i ich zastosowanie........................................................................................ 120
Rozdział 3.
Programowanie obiektowe .....................................................................................................................123
Klasa, obiekt, właściwości i metody.............................................................................. 123
Metody oraz właściwości klasy............................................................................... 126
Konstruktory i destruktory ............................................................................................ 134
Konstruktor klasy .................................................................................................... 134
Destruktor klasy ...................................................................................................... 143
Dziedziczenie ................................................................................................................ 146
Dostęp do metod i właściwości obiektu ........................................................................ 151
Dostęp publiczny..................................................................................................... 151
Dostęp prywatny ..................................................................................................... 152
Dostęp chroniony .................................................................................................... 154
Klasy i metody abstrakcyjne.......................................................................................... 159
Metody typu final.................................................................................................... 162
Rdzeń aplikacji........................................................................................................ 162
Korzystanie z interfejsów .............................................................................................. 166
Powielanie obiektów ..................................................................................................... 171
Funkcja __autoload ....................................................................................................... 175
Rozdział 4.
Komunikacja z bazą danych..................................................................................................................177
Konfigurowanie PHP .................................................................................................... 177
System Windows..................................................................................................... 178
System Linux .......................................................................................................... 179
Klienci baz danych ........................................................................................................ 182
Query Analyzer dla MS SQL Server....................................................................... 182
DBManager dla MySQL oraz PostgreSQL ............................................................. 187
Podstawy SQL............................................................................................................... 193
Tworzenie i usuwanie bazy danych......................................................................... 194
Tworzenie i usuwanie tabel w bazie danych ........................................................... 196
Wprowadzanie informacji do tabeli oraz pobieranie informacji z tabeli ................. 197
Aktualizacja informacji oraz usuwanie informacji z tabeli ..................................... 201
Tworzenie połączenia z bazą danych z poziomu PHP................................................... 202
MySQL ................................................................................................................... 202
PostgreSQL 7 .......................................................................................................... 227
MS SQL Server 2000 .............................................................................................. 240
Rdzeń aplikacji.............................................................................................................. 250
Spis treści
5
Obsługa formularzy .................................................................................................................................. 257
Kod HTML formularza ................................................................................................. 258
Pola formularza ....................................................................................................... 259
Odbieranie danych przesyłanych przez formularz HTML............................................. 265
Metody GET oraz POST przesyłania danych.......................................................... 265
Odbieranie danych z formularza ............................................................................. 266
Walidacja danych z formularza z wykorzystaniem wyra eń regularnych ..................... 271
Czym są wyra enia regularne?................................................................................ 271
Wyra enia regularne w PHP ................................................................................... 271
Metaznaki wyra eń regularnych ............................................................................. 272
Wyra enia regularne walidujące adresy WWW oraz adresy e-mail ........................ 278
Wydajność............................................................................................................... 279
Funkcje PHP do obsługi wyra eń regularnych.............................................................. 281
Odszukiwanie dopasowań. Funkcja preg_match() .................................................. 282
Dzielenie ciągu przeszukiwanego. Funkcja preg_split() ......................................... 282
Tworzenie formularza walidującego gromadzone dane ................................................ 284
Rozdział 5.
Rozdział 6.
Operacje na plikach..................................................................................................................................287
Otwarcie i zamknięcie pliku — funkcje fopen() oraz fclose()....................................... 287
Odczytywanie zawartości pliku..................................................................................... 290
Czytanie pliku wiersz po wierszu............................................................................ 290
Czytanie pojedynczych znaków — funkcja fgetc()................................................. 300
Czytanie określonej liczby znaków — funkcja fread() ........................................... 301
Czytanie całego pliku.............................................................................................. 302
Zapisywanie informacji do pliku................................................................................... 306
Funkcja fwrite()....................................................................................................... 306
Funkcja file_put_contents()..................................................................................... 309
Poruszanie się po pliku.................................................................................................. 310
Funkcja rewind() ..................................................................................................... 310
Funkcja fseek()........................................................................................................ 311
Funkcja ftell().......................................................................................................... 313
Usuwanie plików........................................................................................................... 313
Zbieranie informacji o plikach ...................................................................................... 314
Sprawdzanie, czy plik istnieje — funkcja file_exists() ........................................... 314
Plik czy katalog? — funkcje is_file() oraz is_dir() ................................................. 315
Statystyki plików..................................................................................................... 316
Sprawdzanie i modyfikacja uprawnień do plików i katalogów ............................... 319
Funkcja is_readable() .............................................................................................. 319
Funkcja is_writable() .............................................................................................. 320
Funkcja is_executable() .......................................................................................... 320
Zmiana nazwy plików i katalogów oraz kopiowanie plików......................................... 322
Zmiana nazwy plików i katalogów — funkcja rename()......................................... 323
Kopiowanie plików — funkcja copy() .................................................................... 323
Operacje na katalogach.................................................................................................. 324
Otwieranie i zamykanie katalogów ......................................................................... 324
Odczytywanie zawartości katalogu ......................................................................... 325
Tworzenie i usuwanie katalogów ............................................................................ 331
Sprawdzanie ilości wykorzystanego miejsca na dysku ........................................... 332
Rdzeń aplikacji — klasa Debuger ................................................................................. 335
Przesyłanie plików za pomocą formularzy .................................................................... 338
Formularz wysyłania plików ................................................................................... 338
Zmienna $_FILES................................................................................................... 339
Kopiowanie przesłanych plików ............................................................................. 340
Buforowanie informacji o plikach................................................................................. 344
6
Rozdział 7.
PHP5. Kompendium webmastera
Programowanie wykorzystujące standard XML........................................................................ 345
Czym są dokumenty XML ............................................................................................ 345
Obiektowy model dokumentu XML (DOM XML) ....................................................... 349
Przetwarzanie dokumentów XML za pomocą rozszerzenia PHP
o nazwie SimpleXML........................................................................................... 350
Przetwarzanie dokumentów XML za pomocą klasy DOMDocument..................... 361
Wyra enia XPath........................................................................................................... 396
Tworzenie wyra eń XPath w PHP .......................................................................... 397
Składnia XPath........................................................................................................ 397
Rozdział 8.
Obsługa błędów..........................................................................................................................................403
Grupy i typy błędów w PHP.......................................................................................... 404
Błędy inicjacji PHP................................................................................................. 405
Błędy kompilacji ..................................................................................................... 406
Błędy czasu wykonania........................................................................................... 407
Błędy u ytkownika.................................................................................................. 408
Kolejność zgłaszania błędów .................................................................................. 409
Raportowanie i wyświetlanie błędów w PHP................................................................ 410
Raportowanie błędów.............................................................................................. 410
Wyświetlanie błędów .............................................................................................. 412
Zapisywanie błędów do pliku dziennika zdarzeń.................................................... 413
Przechwytywanie błędów z poziomu PHP .................................................................... 414
Operator kontroli błędów — operator @ ................................................................ 417
Wyjątki.......................................................................................................................... 417
Klasa Exception ...................................................................................................... 418
Zgłaszanie i przechwytywanie wyjątków................................................................ 420
Klasy potomne klasy Exception .............................................................................. 424
Rdzeń aplikacji.............................................................................................................. 425
Rozdział 9.
Sesje, cookies oraz obsługa nagłówków HTTP.............................................................................. 435
Czym jest sesja .............................................................................................................. 436
Jak działa mechanizm sesji ..................................................................................... 436
Tworzenie skryptów korzystających z mechanizmu sesji ............................................. 437
Uruchamianie sesji .................................................................................................. 437
Uzyskiwanie identyfikatora sesji po stronie klienta ................................................ 439
Tworzenie zmiennych sesji ..................................................................................... 439
Niszczenie zmiennych sesyjnych i niszczenie sesji................................................. 441
Czas trwania sesji.................................................................................................... 441
Pliki sesji................................................................................................................. 443
Prosty skrypt autoryzacji......................................................................................... 444
Cookies.......................................................................................................................... 446
Tworzenie cookies .................................................................................................. 446
Usuwanie cookie ..................................................................................................... 449
Nagłówki HTTP ............................................................................................................ 449
Rdzeń aplikacji.............................................................................................................. 451
Rozdział 10.
System szablonów Smarty .....................................................................................................................459
Instalacja systemu szablonów Smarty ........................................................................... 459
Struktura katalogowa .............................................................................................. 462
Parametry konfiguracyjne ....................................................................................... 463
Zgłoś jeśli naruszono regulamin