More specifically, an ampersand (&) prepended to an argument name means that the argument will be passed by reference (http://www.php.net/manual/en/language.references.pass.php).
Fiecare funcție din manual este documentată pentru referință rapidă. Știind cum se citește și se interpretează textul va face studierea PHP mult mai facilă. În loc să se bazeze pe exemple sau pe 'tăiere/inserare', oricine ar trebui să știe cum să citească definițiile funcțiilor (prototipurile). Să începem:
Notă: Condiție esențială: Cunoștințe de bază a tipurilor
Cu toate că PHP este un limbaj liber tipizat, este important de a avea cunoștințe de bază a tipurilor deoarece ele au o însemnătate importantă.
Definițiile functiilor ne spun ce tip de valoare este întoarsă. Să folosim definiția pentru strlen() ca primul nostru exemplu:
strlen (PHP 4, PHP 5) strlen -- Obține lungimea șirului de caractere Descrierea strlen ( string $string ) : int Întoarce lungimea șirului dat de caractere.
Partea | Descrierea |
---|---|
strlen | Numele funcției. |
(PHP 4, PHP 5) | strlen() este prezentă în toate versiunile PHP 4 și PHP 5 |
( string $string ) |
Primul (și în cazul dat unicul) parametru/argument pentru această
funcție este numit string , și este de tipul
string.
|
int | Tipul valorii, pe care această funcție o întoarce, care este integer (adică lungimea șirului de caractere măsurată în numere). |
Am putea rescrie definiția funcției anterioare într-o formă generică:
numele funcției ( tipul parametrului numele parametrului ) : tipul întors
Multe funcții preiau parametri multipli, cum ar fi in_array(). Prototipul său este după cum urmează:
in_array ( mixed $needle, array $haystack [, bool $strict = FALSE]) : bool
Ce înseamnă aceasta? in_array() întoarce o valoare
boolean, true
în cazul
succesului (dacă needle
a fost găsit în
haystack
), sau false
în cazul eșecului (dacă
needle
nu a fost găsit în
haystack
). Primul parametru este numit
needle
și el poate fi de mai multe
tipuri diferite, de aceea îl numim
"mixed". Acest needle
mixt
(ceea ce căutăm) poate fi o valoare scalară (string, integer, sau
float), sau un
array.
haystack
(tabloul în care efectuăm căutarea) este
al doilea parametru. Al treilea parametru opțional
este numit strict
. Toți parametrii opționali se
găsesc între [ astfel de paranteze
]. Mmanual afirmă că parametrul
strict
are valoarea implicită boolean false
.
Vedeți pagina manualului referitoare la fiecare funcție pentru detalii
despre cum ea funcționează.
În plus, simbolul & (ampersand) plasat la începutul unui parametru al funcției permite ca parametrul să fie transmis prin referință, supă cum e prezentat mai jos:
preg_match ( string $pattern , string $subject [, array &$matches [, int $flags = 0 [, int $offset = 0 ]]] ) : int
În acest exemplu observăm că al treilea parametru opțional
&$matches
va fi transmis prin referință.
Există funcții cu informație mai complexă despre versiunea PHP. Să luăm html_entity_decode() ca exemplu:
(PHP 4 >= 4.3.0, PHP 5)
Aceasta înseamnă că această funcție a devenit disponibilă numai începând cu versiunea PHP 4.3.0.
More specifically, an ampersand (&) prepended to an argument name means that the argument will be passed by reference (http://www.php.net/manual/en/language.references.pass.php).