PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie...

26

Transcript of PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie...

Page 1: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo
Page 2: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

Idź do

• Spis treści• Przykładowy rozdział• Skorowidz

• Katalog online

• Dodaj do koszyka

• Zamów cennik

• Zamów informacjeo nowościach

• Fragmenty książekonline

Helion SAul. Kościuszki 1c44-100 Gliwicetel. 32 230 98 63e-mail: [email protected]© Helion 1991–2011

Katalog książek

Twój koszyk

Cennik i informacje

Czytelnia

Kontakt

• Zamów drukowanykatalog

PHP 5. LeksykonkieszonkowyAutor: Marcin Lis

ISBN: 978-83-246-3394-4

Format: 122×194, stron: 168

Praktyczna pomoc na co dzień – sięgnij po świetną ściągawkę z PHP!• Struktura języka, czyli znaczniki, typy danych, operatory i inne elementy

• Instrukcje sterujące oraz funkcje, czyli wydawanie różnych poleceń

• Programowanie obiektowe, czyli najkrótsza droga do celu

Język skryptowy PHP od lat wciąż na nowo udowadnia swoją elastyczność i niezawodność.

Wykorzystywany do tworzenia dynamicznych serwisów internetowych, a także samodzielnych

aplikacji, szczególnie dobrze sprawdza się wtedy, gdy chcemy zapewnić możliwość współdziałania

naszej witryny z różnymi formatami danych oraz skomplikowanymi bazami. Ponadto jego

opanowanie nie nastręcza wielu trudności, a efekty pracy nawet początkujących webmasterów

bywają wręcz spektakularne. Jeśli masz już za sobą pierwsze kroki w dziedzinie programowania

w PHP5, w codziennej pracy z pewnością przyda Ci się poręczna ściąga, w której zawarto

najważniejsze informacje i sposoby wykonywania podstawowych zadań programistycznych.

Właśnie trzymasz ją w ręku!

„PHP5. Leksykon kieszonkowy” powstał po to, by ułatwić Ci szybkie przypomnienie sobie wybranych

zagadnień związanych z tą tematyką. Znajdziesz tu informacje o instalacji oraz konfiguracji

środowiska w systemach Linux i Windows, strukturze języka, instrukcjach sterujących czy funkcjach.

Przeczytasz o operacjach na danych, a także o obsłudze ciągu znaków daty i czasu. Przypomnisz

sobie, jak używać tablic, współpracować z serwerem i przeglądarką, obsługiwać wyjątki.

W leksykonie odszukasz także wiadomości dotyczące systemu plików i programowania obiektowego.

Wszystko to wydatnie skróci Twoją pracę i pomoże Ci uniknąć wielu potencjalnych błędów.

• Instalacja i konfiguracja

• Struktura języka

• Instrukcje sterujące

• Funkcje

• Operacje na danych i obsługa ciągu znaków

• Tablice

• Obsługa daty i czasu

• Współpraca z serwerem i przeglądarką

• Programowanie obiektowe

• Wyjątki

• Obsługa systemu plików

Dobra podpowiedź zawsze pod ręką!

Page 3: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

3

Spis tre�ci

Wst�p .....................................................................................................7

1. Instalacja i konfiguracja ........................................................................9Linux 9Windows 11Plik konfiguracyjny php.ini 13PHP w wierszu polece� 14

2. Struktura j�zyka .................................................................................. 15Struktura skryptów 15Znaczniki skryptów PHP 15Znaczniki kanoniczne 16Znaczniki skryptów HTML 16Znaczniki typu SGML 16Znaczniki typu ASP 16Osadzanie skryptów w kodzie (X)HTML 17Przeplatanie kodu (X)HTML i PHP 18Komentowanie kodu 18Typy danych 19Litera�y 22Identyfikatory 25S�owa kluczowe (zarezerwowane) 25Zmienne 26Zmienne nazwy zmiennych 27Zmienne superglobalne 28Automatyczne i wymuszone konwersje typów 30Sta�e 36Operatory 40Przetwarzanie wyra�e� 54

Page 4: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

4 � PHP 5. Leksykon kieszonkowy

3. Instrukcje steruj�ce .............................................................................57Instrukcje warunkowe 57P�tle 59Instrukcje break i continue 62Instrukcja goto 65Sk�adnia alternatywna 66��czenie skryptów 69

4. Funkcje ................................................................................................. 71Deklaracje 71Zwracanie warto�ci 71Wywo�ywanie funkcji 72Sposoby przekazywania argumentów 72Zasi�g zmiennych 75Warto� zmiennej jako nazwa funkcji 77Definiowanie funkcji wewn�trz funkcji 78Funkcje anonimowe 78

5. Wyprowadzanie danych i obs�uga ci�gów znaków ......................... 80Obs�uga standardowego wyj�cia 80Wyprowadzanie znaczników HTML 81Ró�nice mi�dzy typami ci�gów znaków 81Znaki specjalne 82Dost�p do pojedynczych znaków ci�gu 83Funkcje przetwarzaj�ce ci�gi znaków 83

6. Tablice ................................................................................................ 104Tablice indeksowane numerycznie 104Tablice asocjacyjne 105Tablice wielowymiarowe 106Rozmiar tablicy 107Odczyt danych za pomoc� p�tli 108Funkcje wspomagaj�ce przetwarzanie tablic 109

7. Obs�uga daty i czasu ...........................................................................116Funkcja checkdate (dost�pna od PHP 3) 116Funkcja date (dost�pna od PHP 3) 116

Page 5: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

Spis tre�ci � 5

8. Wspó�praca z serwerem i przegl�dark� ........................................... 125Odbieranie danych wys�anych metod� GET 125Odbieranie danych wys�anych metod� POST 126Wysy�anie plików do serwera WWW 126Odbiór plików przes�anych do serwera 127Obs�uga cookies 129Obs�uga sesji 131Opcje konfiguracyjne sesji 133

9. Programowanie obiektowe .............................................................. 136Definiowanie klasy 136Sk�adowe klasy 136Specyfikatory dost�pu 137Tworzenie obiektów 137Odwo�ania do sk�adowych 138Konstruktory i destruktory 138Przeci��anie metod 140Dziedziczenie 141Przes�anianie sk�adowych 142Metody finalne 142Klasy finalne 143Sk�adowe statyczne 143

10. Wyj�tki ............................................................................................... 145Zg�aszanie wyj�tków 145Klasa Exception 145Sekcja try…catch 146Wyj�tki predefiniowane 147Tworzenie wyj�tków 147

11. Obs�uga systemu plików ...................................................................148Odczyt zawarto�ci katalogu 148Tworzenie i usuwanie katalogów 149Tworzenie i usuwanie plików 150Otwieranie i zamykanie plików 150Odczyt plików 152Zapis danych w plikach 153

Skorowidz .......................................................................................... 157

Page 6: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

Rozdzia� 4. Funkcje � 71

Rozdzia� 4. Funkcje

DeklaracjeW celu utworzenia funkcji nale�y u�y s�owa kluczowego function.Taka konstrukcja ma schematyczn� posta:

function nazwa_funkcji(){ //instrukcje wn�trza funkcji}

Przy nazywaniu funkcji obowi�zuj� takie same zasady jak przy in-nych identyfikatorach. Je�eli funkcja ma przyjmowa argumenty, ichlist� nale�y umie�ci w nawiasie okr�g�ym wyst�puj�cym za nazw�:

function nazwa_funkcji($argument1, $argument2,…,$argumentN){ //instrukcje wn�trza funkcji}

W ciele (we wn�trzu) funkcji mo�na zawrze dowolny, poprawnysk�adniowo, kod PHP, w��cznie z definicjami innych funkcji i klas.

Oto przyk�ad funkcji wy�wietlaj�cej napis:

function wy�wietl(){ echo "Tekst generowany przez funkcj� wy�wietl.";}

Zwracanie warto�ciZwracanie warto�ci przez funkcj� jest realizowane za pomoc� instrukcjireturn. Je�li wyst�pi ona wewn�trz funkcji, ta jest przerywana i zwracawarto� wyst�puj�c� po return. Schematycznie tego typu konstrukcjawygl�da nast�puj�co:

function nazwa_funkcji(argumenty){ //instrukcje wn�trza funkcji return warto��;}

W miejscu wywo�ania takiej funkcji zostanie wstawiona zwrócona przezni� warto�, która b�dzie mog�a by wykorzystana w dalszej cz��ci

Page 7: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

72 � PHP 5. Leksykon kieszonkowy

skryptu. Je�eli zostanie u�yta instrukcja return bez wskazanej warto�ci,funkcja jest przerywana i zwracana warto� null. Je�li funkcja nie za-wiera instrukcji return, zwracan� warto�ci� jest równie� null.

Oto przyk�ad funkcji zwracaj�cej warto� arytmetyczn� ca�kowitolicz-bow� (integer) 12:

function func(){ return 12;}

A to przyk�ad funkcji przyjmuj�cej dwa argumenty i zwracaj�cej wynikich dodawania:

function dodaj($arg1, $arg2){ return $arg1 + $arg2;}

Wywo�ywanie funkcjiAby wywo�a funkcj�, nale�y poda jej nazw� zako�czon� nawiasemokr�g�ym. Je�eli funkcja przyjmuje argumenty, nale�y je umie�ciw tym nawiasie. W miejscu wywo�ania funkcji podstawiana jest zwró-cona przez ni� warto�. Przyk�adowa instrukcja:

$wynik = func();

spowoduje wywo�anie funkcji o nazwie func i przypisanie wyniku jejdzia�ania zmiennej $wynik. Oto przyk�ad wywo�ania funkcji z dwomaargumentami:

$wynik = dodaj(12, 24);

Sposoby przekazywania argumentówFunkcja mo�e mie dowoln� liczb� argumentów oddzielonych od siebieznakiem przecinka. Argumenty przekazywane s� na dwa sposoby:

� przez warto� (z ang. by value),

� przez referencj� (z ang. by reference),

Argumenty mog� mie te� warto�ci domy�lne. Standardowo przeka-zywanie odbywa si� przez warto�, podobnie jak w innych j�zykachprogramowania.

Page 8: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

Rozdzia� 4. Funkcje � 73

Przekazywanie przez warto�Przekazywanie przez warto� oznacza, �e funkcja otrzymuje kopie ar-gumentów ród�owych i wszelkie operacje wykonuje na tych kopiach.Nie jest zatem w stanie dokona �adnej modyfikacji orygina�u. Je�eliwi�c jako argument zosta�a przekazana zmienna, to jej stan nie zmienisi�, niezale�nie od tego, co zostanie wykonane wewn�trz funkcji:

<?phpfunction f($arg){ //modyfikacja jedynie kopii danych //nie ma wp�ywu na warto�� zmiennej $zmienna $arg = 'dwa';}$zmienna = 'jeden';echo $zmienna, "\n";f($zmienna);//zmienna ma warto�� 'jeden'echo $zmienna;?>

Przekazywanie przez referencj�Przekazywanie przez referencj� oznacza przekazanie do funkcji ory-ginalnych danych. Je�eli funkcja zmieni ich warto� (warto�ci), pozo-stanie ona zmieniona równie� po zako�czeniu dzia�ania funkcji. Abyskorzysta z tego sposobu przekazywania argumentów, dany argumentnale�y poprzedzi znakiem & (ampersand), schematycznie:

function funkcja(&argument);

np.:

<?phpfunction f(&$arg){ //tutaj nast�puje modyfikacja //warto�ci zmiennej $zmienna $arg = 'dwa';}$zmienna = 'jeden';echo $zmienna, "\n";f($zmienna);//zmienna ma warto�� 'dwa'echo $zmienna;?>

Domy�lne warto�ci argumentówArgumenty domy�lne s� definiowane podobnie jak w innych j�zykachprogramowania. Nale�y skorzysta z konstrukcji o schematycznej postaci:

Page 9: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

74 � PHP 5. Leksykon kieszonkowy

function nazwa_funkcji ($argument1 = warto��, $argument2 =�warto��2, ..., $argumentN = warto��N){ //tre�� funkcji}

Warto� domy�lna musi by wyra�eniem sta�ym (o sta�ej warto�ci, z ang.constant expression), nie mo�e wi�c to by np. zmienna. Nale�y równie�pami�ta, �e konieczne jest podanie wszystkich domy�lnych argumen-tów z prawej strony listy argumentów przed wszystkimi argumentamizwyk�ymi, np.:

function show($arg1, $arg2 = "abc", $arg3 = "def"){ echo $arg1. " ".$arg2." ".$arg3;}

Po takiej deklaracji funkcja show mog�aby by wywo�ana na jedenz trzech poni�szych sposób:

show("123");show("123", "456");show("123", "456", "789");

Zmienna liczba argumentówW funkcjach mo�na stosowa zmienn� liczb� argumentów. Nie ma dotego �adnych specjalnych konstrukcji. Funkcja mo�e by wywo�anaz dowoln� liczb� argumentów, wi�ksz� ni� liczba podana w deklaracji.Do obs�ugi zmiennej listy argumentów wykorzystywane s� trzy funkcje:

� func_num_args — zwraca liczb� argumentów funkcji,

� func_get_arg — zwraca argument o podanym numerze,

� func_get_args — zwraca list� argumentów w postaci tablicy.

Oto przyk�ad skryptu zawieraj�cego funkcj� o zadeklarowanej zerowejliczbie argumentów, która dokonuje ��czenia �a�cuchów znakowychprzekazanych jej w postaci argumentów:

<?phpfunction po��cz(){ $val = ""; $count = func_num_args(); for($i = 0; $i < $count; $i++){ $val .= func_get_arg($i); } return $val;}$str = po��cz("To ", "jest ", "test");echo $str;?>

Page 10: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

Rozdzia� 4. Funkcje � 75

A to ten sam skrypt wykorzystuj�cy funkcj� func_get_args i p�tl�foreach:<?phpfunction po��cz(){ $val = ""; $tab = func_get_args(); foreach($tab as $v){ $val .= $v; } return $val;}$str = po��cz("To ", "jest ", "test");echo $str;?>

Zasi�g zmiennychW PHP zasi�g zmiennej jest ograniczony do kontekstu, w którymzosta�a zdefiniowana. W tym znaczeniu zmienne mo�na podzieli na:

� globalne,

� lokalne.

Zmienne globalneZmienna zadeklarowana w skrypcie poza cia�em funkcji lub klasy jestzmienn� globaln�, tzn. dost�pn� bezpo�rednio w ka�dym miejscu skryptupoza wn�trzami funkcji. W przyk�adowym kodzie:<?php$liczba = 100;function f(){ echo $liczba;}f();?>

zmienna $liczba jest globalna i nie ma do niej dost�pu w funkcji f.Dlatego te� po wywo�aniu funkcji warto� nie zostanie wy�wietlona,wygenerowane zostanie natomiast ostrze�enie (poziom notice) o nie-zdefiniowanej zmiennej $liczba.

Aby w funkcji uzyska dost�p do zmiennych o zasi�gu globalnym, na-le�y u�y s�owa kluczowego global lub tablicy $GLOBALS. W pierw-szym przypadku przed odwo�aniem (najlepiej na pocz�tku kodufunkcji) nale�y u�y konstrukcji o schematycznej postaci:global $zmienna1, $zmienna2,…,$zmiennaN;

Page 11: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

76 � PHP 5. Leksykon kieszonkowy

Po wykonaniu takiej instrukcji b�dzie mo�na si� odwo�ywa do wszyst-kich zmiennych globalnych wymienionych po global, np.:<?php$liczba = 100;function f(){ global $liczba; echo $liczba;}f();?>

W drugim przypadku, poniewa� tablica $GLOBALS zawiera odwo�aniado wszystkich zmiennych globalnych skryptu, nale�y skorzystaz odwo�ania typu:$GLOBALS['nazwa_zmiennej']

np.:<?php$liczba = 100;function f(){ echo $GLOBALS['liczba'];}f();?>

Zmienne lokalneZasi�g zmiennych lokalnych jest ograniczony wy��cznie do wn�trzafunkcji, w której zosta�y zdefiniowane. Odwo�ania w innym miejscuskryptu nie s� mo�liwe, np.:<?phpfunction f(){ $liczba = 100; echo "Wewn�trz funkcji f: $liczba\n";}f();echo "Poza funkcj� f: $liczba";?>

Zmienne statyczneZmienne statyczne to zmienne lokalne funkcji, które zachowuj� swoj�warto� pomi�dzy jej wywo�aniami. Aby zadeklarowa tak� zmienn�,nale�y u�y s�owa static, schematycznie:

static $nazwa_zmiennej = warto��;

Page 12: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

Rozdzia� 4. Funkcje � 77

Po takiej deklaracji (we wn�trzu funkcji) pierwsze wywo�anie funkcjispowoduje utworzenie zmiennej statycznej i zapami�tanie jej ostatniejwarto�ci, natomiast w ka�dym kolejnym wywo�aniu instrukcja przy-pisuj�ca pierwotn� warto� zmiennej b�dzie ignorowana, a u�yta zosta-nie warto� z poprzedniego wywo�ania, np.:<?phpfunction f($val){ static $liczba = 100; $liczba += $val; echo "Wartos� zmiennej : $liczba\n";}f(10);f(20);?>

Warto� zmiennej jako nazwa funkcjiW PHP warto� zmiennej mo�e by potraktowana jako nazwa funkcjido wywo�ania. Aby skorzysta z takiej techniki, nale�y za nazw� zmien-nej umie�ci nawias okr�g�y, schematycznie:$nazwa_zmiennej();

Je�eli zatem zmiennej $nazwa zostanie przypisany ci�g znaków za-wieraj�cy nazw� istniej�cej funkcji wy�wietl, to po u�yciu instrukcji:$nazwa();

funkcja wy�wietl zostanie wywo�ana:<?phpfunction wy�wietl(){ echo "To jest funkcja wy�wietl.";}

$nazwa = 'wy�wietl';

$nazwa();

?>

W ten sam sposób mog� by wywo�ywane metody obiektów. Je�elifunkcja lub metoda wymaga podania argumentów, nale�y je podaw nawiasie okr�g�ym wyst�puj�cym za nazw� zmiennej, np.:<?phpfunction dodaj($arg1, $arg2){ return $arg1 + $arg2;}

Page 13: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

78 � PHP 5. Leksykon kieszonkowy

$nazwa = 'dodaj';

$wynik = $nazwa(2, 3);echo $wynik;?>

Definiowanie funkcji wewn�trz funkcjiW PHP mo�na definiowa funkcje wewn�trz innych funkcji. Powstaj�wtedy funkcje wewn�trzne dost�pne tylko w obr�bie (w zasi�gu) funkcjizewn�trznej (g�ównej). Nie ma limitu poziomu zagnie�d�enia funkcjiwewn�trznych (tzn. jedna funkcja wewn�trzna mo�e zawiera kolejn�funkcj� wewn�trzn�). Schematycznie konstrukcja funkcji wewn�trznejwygl�da nast�puj�co:

function nazwa_funkcji_zewn�trznej(argumenty){ function nazwa_funkcji_wewn�trznej(argumenty){ //tre�� funkcji wewn�trznej } //dalsza tre�� funkcji zewn�trznej}

Oto przyk�ad u�ycia funkcji wewn�trznych:

<?phpfunction dzia�anie($val1, $val2, $op){ function dodaj($arg1, $arg2){ return $arg1 + $arg2; } function odejmij($arg1, $arg2){ return $arg1 - $arg2; } switch($op){ case '+': return dodaj($val1, $val2); case '-': return odejmij($val1, $val2); default: return null; }}

$wynik = dzia�anie(2, 3, '+');echo $wynik;?>

Funkcje anonimoweOd PHP 5.3.0 dost�pne s� funkcje anonimowe, czyli takie, które nieposiadaj� nazwy. Najcz��ciej u�ywane s� podczas stosowania funkcjizwrotnych (z ang. callback functions). Definicja funkcji anonimowejwygl�da podobnie jak definicja funkcji zwyk�ej, schematycznie:

Page 14: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

Rozdzia� 4. Funkcje � 79

function (argument1, argument2,…, argumentN){ //tre�� funkcji}

Oto przyk�ad u�ycia funkcji anonimowej jako funkcji zwrotnej:

<?phpfunction dzia�anie($val1, $val2, $func){ return $func($val1, $val2);}

$wynik = dzia�anie(2, 3, function($arg1, $arg2){ return $arg1 + $arg2; });

echo $wynik;?>

W tym przypadku trzecim argumentem funkcji dzia�anie jest funkcjaanonimowa przyjmuj�ca dwa argumenty ($arg1 i $arg2) i zwracaj�cawynik ich dodawania. Funkcja anonimowa jest wywo�ywana w funkcjidzia�anie przez zastosowanie sk�adni opisanej w podrozdziale „War-to� zmiennej jako nazwa funkcji”.

Funkcja anonimowa mo�e by równie� przypisana bezpo�rednio zmien-nej, np.:

<?php$zmienna = function($arg1){ return $arg1 * 2;};$wynik = $zmienna(12);echo $wynik;?>

Page 15: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

157

Skorowidz

", 82"array", 32"bool", 32"boolean", 32"double", 32"float", 32"int", 32"integer", 32"null", 32"object", 32"string", 32$, 82$_COOKIE, 28, 29$_ENV, 29$_FILES, 29$_GET, 28, 29$_POST, 28, 29, 126$_REQUEST, 29$_SERVER, 28$_SESSION, 29$argc, 30$argv, 30$GLOBALS, 28$HTTP_RAW_POST_DATA, 29$http_response_header, 29$php_errormsg, 29(array), 31(bool), 30(boolean), 30(double), 30(float), 30(int), 30(integer), 30(object), 31(real), 30(string), 31(unset), 31(X)HTML, 17, 18

\, 82__CLASS__, 40__DIR__, 40__FILE__, 40__FUNCTION__, 40__LINE__, 40__METHOD__, 40__NAMESPACE__, 40<div>, 18<script>, 16

Aaddcslashes, 83addslashes, 84apostrof, 21, 23array array_slice, 112array array_splice, 112array str_getcsv, 95array_count_values, 109array_diff, 110array_diff_key, 109array_fill, 110array_key_exists, 110array_keys, 110array_pop, 111array_push, 111array_replace, 111array_reverse, 111array_search, 111array_shift, 111array_sum, 112array_unique, 112array_unshift, 113arsort, 113asort, 113

Page 16: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

158 � PHP 5. Leksykon kieszonkowy

BBIG5, 87BIG5-HKSCS, 87bin2hex, 84bitowa ró�nica symetryczna, 43boolean, 30

Ccharset, 87checkdate, 116chop, 84chr, 84chunk_split, 84closedir, 148Content-Disposition, 126, 127Content-Length, 126Content-Type, 126convert_cyr_string, 84convert_uudecode, 85cookies, 129

obs�uga, 129odczyt, 131usuwanie, 131zapis, 129

count_chars, 85cp1251, 87cp1252, 87cp866, 87crc32, 85crypt, 86cudzys�ów, 21, 23

Ddate, 116delimiter, 95destruktory, 138

tworzenie, 139disk_free_space, 154disk_total_space, 154dost�p

chroniony, 137private, 137protected, 137prywatny, 137

public, 137publiczny, 137

double, 20doubleval, 31dsttime, 119dziedziczenie, 141

Eenclosure, 95ENT_COMPAT, 86ENT_NOQUOTES, 86ENT_QUOTES, 86escape, 95EUCJP, 87EUC-JP, 87explode, 86extension_dir, 13

Ffalse, 20, 25feof, 155fgetc, 152fgets, 152fgetss, 152file, 153file_exists, 155file_get_contents, 152FILE_IGNORE_NEW_LINES, 153file_put_contents, 154FILE_SKIP_EMPTY_LINES, 153FILE_USE_INCLUDE_PATH, 153fileatime, 155filectime, 155filemtime, 155filesize, 155float, 20floatval, 31fopen, 150fpassthru, 153fprintf, 86fprintf, 86fputs, 154fscanf, 153fseek, 156ftell, 156

Page 17: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

Skorowidz � 159

func_get_arg, 74func_get_args, 74func_num_args, 74function, 71funkcja

addcslashes, 83addslashes, 84array array_slice, 112array array_splice, 112array str_getcsv, 95array_count_values, 109array_diff, 110array_diff_key, 109array_fill, 110array_key_exists, 110array_keys, 110array_pop, 111array_push, 111array_replace, 111array_reverse, 111array_search, 111array_shift, 111array_sum, 112array_unique, 112array_unshift, 113arsort, 113asort, 113bin2hex, 84checkdate, 116chop, 84chr, 84chunk_split, 84closedir, 148convert_cyr_string, 84convert_uudecode, 85count_chars, 85crc32, 85crypt, 86date, 116disk_free_space, 154disk_total_space, 154explode, 86feof, 155fgetc, 152fgets, 152fgetss, 152file, 153

file_exists, 155file_get_contents, 152file_put_contents, 154fileatime, 155filectime, 155filemtime, 155filesize, 155fopen, 150fpassthru, 153fprintf, 86fputs, 154fscanf, 153fseek, 156ftell, 156fwrite, 154getdate, 118gettimeofday, 119gmdate, 119gmmktime, 119gmstrftime, 119html_entity_decode, 86htmlentities, 87htmlspecialchars, 88htmlspecialchars_decode, 87idate, 119implode, 88in_array, 113join, 88krsort, 113ksort, 114lcfirst, 88levenshtein, 88localeconv, 89localtime, 120ltrim, 89md5, 89md5_file, 89metaphone, 89microtime, 120mktime, 121money_format, 90natcasesort, 114natsort, 114nl2br, 90number_format, 90opendir, 148ord, 91

Page 18: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

160 � PHP 5. Leksykon kieszonkowy

funkcjaparse_str, 91printf, 91quoted_printable_decode, 91quoted_printable_encode, 91quotemeta, 91range, 114readdir, 148readfile, 153rsort, 114rtrim, 91setlocale, 92sha1, 93sha1_file, 92shuffle, 115similar_text, 93sort, 115soundex, 93sprintf, 93sscanf, 95str_ireplace, 95str_pad, 96str_repeat, 96str_replace, 96str_rot13, 96str_shuffle, 96str_split, 96str_word_count, 97strcasecmp, 97strchr, 97strcmp, 97strcoll, 97strcspn, 98strftime, 121string convert_uuencode, 85strip_tags, 98stripcslashes, 98stripos, 98stripslashes, 98stristr, 98strlen, 98strnatcasecmp, 99strnatcmp, 99strncasecmp, 99strncmp, 99strpbrk, 99strpos, 99

strptime, 123strrchr, 99strrev, 100strripos, 100strrpos, 100strspn, 100strstr, 100strtok, 101strtolower, 101strtotime, 124strtoupper, 101strtr, 101substr, 102substr_compare, 101substr_count, 102substr_replace, 102time, 124trim, 102uasort, 115ucfirst, 102ucwords, 103uksort, 115usort, 115vfprintf, 103vprintf, 103vsprintf, 103wordwrap, 103

funkcje, 71anonimowe, 78deklaracja, 71domy�lne warto�ci argumentów, 73operuj�ca na systemie plików, 154przekazywanie argumentów

przez referencj�, 73przekazywanie argumentów

przez warto�, 73przekazywanie argumentów, 72wracanie warto�ci, 71wywo�anie, 72zmienna liczba argumentów, 74

fwrite, 154

GGB2312, 87getdate, 118gettimeofday, 119

Page 19: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

Skorowidz � 161

gettype(), 35gmdate, 119gmmktime, 119gmstrftime, 119

Hheredoc, 21hours, 118HTML 4.01 Strict, 17html_entity_decode, 86htmlentities, 87htmlspecialchars, 88htmlspecialchars_decode, 87httpd.conf, 11, 12

Iibm866, 87idate, 119identyfikatory, 25if, 20iloczyn bitowy, 42implode, 88in_array, 113include, 69, 70include_once, 69, 70include_path, 13, 70index.php, 11, 14instalacja

Linux, 9integracja z serwerem

Apache, 11za pomoc� gotowych

pakietów, 9ze róde�, 10

Windows, 11instalator, 12integracja z serwerem

Apache, 12r�czna, 12

instrukcjabreak, 62continue, 64goto, 65if...else if, 57, 67

if…else, 57, 66wyboru switch, 58steruj�ca, 57warunkowa, 57

int, 20integer, 20intval, 31is_array(), 35is_bool(), 35is_double(), 35is_float(), 35is_int(), 35is_integer(), 35is_long(), 35is_null(), 35is_numeric, 35is_object(), 35is_real(), 35is_resource, 35is_scalar, 35is_string(), 35ISO-8859-1, 87ISO-8859-15, 87ISO-8859-2, 17

Jjoin, 88

Kkatalog

odczytywanie, 148otwieranie, 148tworzenie, 149usuwanie, 149zamykanie, 148

klasadefiniowanie, 136Exception, 145finalna, 143wyj�tków, 147

klonowanie obiektów, 53kod ASCII

0x00, 890x09, 890x0A, 89

Page 20: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

162 � PHP 5. Leksykon kieszonkowy

kod ASCII0x0B, 890x0D, 890x32, 89

koi8r, 87koi8-ru, 87komentarz

blokowy, 18jednowierszowy, 18

uniksowy, 18, 19zwyk�y, 19

konstruktory, 138argumenty, 139tworzenie, 138

kontrola typów danych, 34konwersja typów, 30

automatyczna, 30do typu ca�kowitego (integer), 33do typu logicznego (boolean), 32do typu �a�cuchowego (string), 34do typu zmiennoprzecinkowego

(double), 33wymuszona, 30zasady, 32

krsort, 113ksort, 114

LLC_ALL, 92LC_COLLATE, 92LC_CTYPE, 92LC_MESSAGES, 92LC_MONETARY, 92LC_NUMERIC, 92LC_TIME, 92lcfirst, 88levenshtein, 88lewy uko�nik, 82liczby zmiennopozycyjne, 20liczby zmiennoprzecinkowe, 20litera�y, 22

null, 22, 25ca�kowite, 22logiczne, 22, 25�a�cuchowe, 22, 23

rzeczywiste, 22zmiennopozycyjne, 22zmiennoprzecinkowe, 22

localeconv, 89localtime, 120ltrim, 89

Mmax_execution_time, 13md5, 89md5_file, 89mday, 118memory_limit, 13metaphone, 89metoda, 136

finalna, 142GET, 125getCode, 145getFile, 145getLine, 145getMessage, 145getPrevious, 145getTrace, 146getTraceAsString, 146POST, 126przeci��anie, 140

microtime, 120minutes, 118minuteswest, 119mktime, 121modyfikatory dost�pu, 137mon, 118money_format, 90month, 118

Nn, 82natcasesort, 114natsort, 114negacja bitowa, 42, 43nl2br, 90nnn, 82nowa linia, 82nowdoc, 21number_format, 90

Page 21: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

Skorowidz � 163

Oobiekty

klonowanie, 53tworzenie, 52, 137

obs�uga standardowego wyj�cia, 80odwo�ania do sta�ych, 37okre�lenie wersji PHP, 41opendir, 148operatory, 40

arytmetyczne, 40, 42dodawanie, 42dzielenie, 42dzielenie modulo, 42mno�enie, 42odejmowanie, 42reszta z dzielenia, 42

bitowe, 40, 42alternatywa wykluczaj�ca, 42bitowa ró�nica symetryczna, 42iloczyn, 42negacja bitowa, 42operacja AND, 42operacja NOT, 42operacja OR, 42operacja XOR, 42przesuni�cie bitowe w lewo, 42przesuni�cie bitowe w prawo, 42suma bitowa, 42

dekremetacji, 40, 48indeksowania tablic, 49inkrementacji, 40, 48kontroli b��dów, 51kontroli typów, 51logiczne, 40, 45

alternatywa logiczna, 46iloczyn logiczny, 45logiczna alternatywa

wykluczaj�ca, 46negacja logiczna, 46ró�nica symetryczna, 46suma logiczna, 46

�a�cuchowe, 40, 50��czenia tablic, 49porównywania, 40, 47, 49pozosta�e, 40

priorytety, 53przypisania, 40, 47relacyjne, 40, 47rzutowania typów, 52tablicowe, 48warunkowe, 40, 50

ord, 91

Pparse_str, 91p�tla, 59

do…while, 59, 60for, 59, 67foreach, 59, 61, 68instrukcja break, 62instrukcja continue, 64instrukcja goto, 65instrukcja switch, 68while, 59, 60, 68zagnie�d�anie, 62

PHP, 7Personal HomePage Toolkit, 7Personal HomePage Tools, 7PHP Hypertext Preprocesor, 7

php.ini, 10, 12, 13, 16, 126, 127, 133PHP5. Praktyczny kurs. Wydanie II, 8plik

odczyt, 152otwieranie, 150tworzenie, 150zapis danych, 153usuwanie, 150zamykanie, 150

plik konfiguracyjny, 13 Patrz te�php.ini

pola, 136polecenie zewn�trzne, 52post_max_size, 13powrót karetki, 82printf, 91, 94private, 137protected, 137przeci��anie, 140

metod, 140przes�anianie sk�adowych, 142

Page 22: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

164 � PHP 5. Leksykon kieszonkowy

przesuni�ciebitowe w lewo, 42, 44bitowe w prawo, 42, 44strony, 82wysuni�cie, 82

przypisanie warto�ci do zmiennej, 26public, 137

Qquot_style, 86quoted_printable_decode, 91quoted_printable_encode, 91quotemeta, 91

Rrange, 114readdir, 148readfile, 153require, 69, 70require_once, 69, 70return, 71ró�nica bitowa, 42rsort, 114rtrim, 91rzutowanie, 52

Ssec, 119seconds, 118sekcja try…catch, 146sesja

identyfikator, 131ko�czenie, 132obs�uga, 131rozpoczynanie, 132zmienne, 132

session entropy_length, 134session.entropy_file, 134session.serialize_handler, 135session.auto_start, 133session.cache_expire, 133session.cookie_domain, 133session.cookie_httponly, 133

session.cookie_lifetime, 134session.cookie_path, 134session.cookie_secure, 134session.gc_divisor, 134session.gc_maxlifetime, 134session.gc_probability, 134session.hash_bits_per_character, 134session.hash_function, 134session.name, 134session.referer_check, 135session.save_handler, 135session.save_path, 135session.use_cookies, 135session.use_only_cookies, 135session.use_trans_sid, 135setcookie, 129setlocale, 92settype, 31sha1, 93sha1_file, 92Shift_JIS, 87shuffle, 115similar_text, 93SJIS, 87sk�adnia

heredoc, 21, 23, 24, 81nowdoc, 21, 23, 24, 81

sk�adoweklasy, 136statyczne, 143

skrypt, 15, 17��czenie, 69

s�owa kluczowe, 25abstract, 26and, 26array, 26as, 26break, 26case, 26catch, 26cfunction, 26class, 26clone, 26const, 26continue, 26declare, 26default, 26

Page 23: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

Skorowidz � 165

do, 26else, 26elseif, 26enddeclare, 26endfor, 26endforeach, 26endif, 26endswitch, 26endwhile, 26extends, 26final, 26for, 26foreach, 26function, 26global, 26goto, 26if, 26implements, 26instanceof, 26interface, 26namespace, 26new, 26old_function, 26or, 26private, 26protected, 26public, 26static, 26switch, 26throw, 26try, 26use, 26var, 26while, 26xor, 26

sort, 115SORT_LOCALE_STRING, 112SORT_NUMERIC, 112SORT_REGULAR, 112SORT_STRING, 112soundex, 93specyfikatory dost�pu, 137sprintf, 93, 94sscanf, 95sta�a, 36

definiowanie, 36magiczna, 40napisowa, 22

odwo�ania, 37predefiniowana, 40, 41

DEFAULT_INCLUDE_PATH, 41PHP_CONFIG_FILE_PATH, 41PHP_EOL, 41PHP_EXTENSION_DIR, 41PHP_INT_MAX, 41PHP_INT_SIZE, 41PHP_MAJOR_VERSION, 41PHP_MINOR_VERSION, 41PHP_OS, 41PHP_RELEASE_VERSION, 41PHP_VERSION, 41PHP_VERSION_ID, 41PHP_WINDOWS_VERSION_

BUILD, 41PHP_WINDOWS_VERSION_

MAJOR, 41PHP_WINDOWS_VERSION_

MINOR, 41standardowe wyj�cie, 80str_ireplace, 95str_pad, 96STR_PAD_BOTH, 96STR_PAD_LEFT, 96STR_PAD_RIGHT, 96str_repeat, 96str_replace, 96str_rot13, 96str_shuffle, 96str_split, 96str_word_count, 97strcasecmp, 97strchr, 97strcmp, 97strcoll, 97strcspn, 98strftime, 121string convert_uuencode, 85strip_tags, 98stripcslashes, 98stripos, 98stripslashes, 98stristr, 98strlen, 98strnatcasecmp, 99strnatcmp, 99

Page 24: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

166 � PHP 5. Leksykon kieszonkowy

strncasecmp, 99strncmp, 99strpbrk, 99strpos, 99strptime, 123strrchr, 99strrev, 100strripos, 100strrpos, 100strspn, 100strstr, 100strtok, 101strtolower, 101strtotime, 124strtoupper, 101strtr, 101strval, 31substr, 102substr_compare, 101substr_count, 102substr_replace, 102suma bitowa, 42, 43

Ttablice, 104

asocjacyjne, 105indeksowane numerycznie, 104rozmiar, 107wielowymiarowe, 106

tabulator, 82pionowy, 82poziomy, 82

time, 124tm_hour, 120, 123tm_isdst, 120tm_mday, 120, 123tm_min, 120, 123tm_mon, 120, 123tm_sec, 120, 123tm_wday, 120, 123tm_yday, 120, 123tm_year, 120, 123trim, 102true, 20, 25try…catch, 146tworzenie obiektów, 52

tworzenie wyj�tków, 147typ danych, 19

boolean, 19, 20boolowski, 32ca�kowitoliczbowy, 20, 30, 32double, 19, 20, 31float, 19, 20integer, 19, 20, 31kontrola, 34�a�cuchowy, 20, 31, 32NULL, 21, 31, 32obiektowy, 21, 31, 32prosty, 19resource, 21skalarny, 19specjalny, 19, 21string, 19, 20, 31tablicowy, 31, 32z�o�ony, 19, 21zmiennoprzecinkowy, 30, 32

Uuasort, 115ucfirst, 102ucwords, 103uksort, 115unparsed, 123upload_max_filesize, 13usec, 119usort, 115UTF-8, 17, 87uuencode, 85

Vvfprintf, 103vprintf, 94, 103vsprintf, 103

Wwday, 118weekday, 118wiersz polece�, 14

Page 25: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo

Skorowidz � 167

Windows-1251, 87Windows-1252, 87w�a�ciwo�ci, 136wordwrap, 103wyj�tki predefiniowane, 147wyra�enia, 54

XXHTML 1.0, 17xNN, 82

Yyday, 118year, 118

Zzg�aszanie wyj�tków, 145zmienne, 26

autoglobalne, 28globalne, 28, 75lokalne, 76przypisanie warto�ci, 26statyczne, 76superglobalne, 28typ, 26

znaczniki, 15(X)HTML, 81kanoniczne, 15, 16skryptów HTML, 15, 16typu ASP, 15, 16typu SGML, 15, 16

znak cudzys�owu, 82znak dolara, 82znaki specjalne, 82

Page 26: PHP 5. Leksykon kieszonkowy - ebookpoint.plpdf.ebookpoint.pl/ph5lek/ph5lek.pdf• Programowanie obiektowe, czyli najkrótsza droga do celu Język skryptowy PHP od lat wciąż na nowo