PHP Australia Conference 2015

Cum se citește definiția unei funcții (prototipul)

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
int strlen ( string $string )

Întoarce lungimea șirului dat de caractere.

Explicația unei definiții a funcției
Partea Descrierea
strlen Numele funcției.
(PHP 4, PHP 5) strlen() este prezentă în toate versiunile PHP 4 și PHP 5
int Tipul valorii, pe care această funcție o întoarce, care este integer (adică lungimea șirului de caractere măsurată în numere).
( string $string ) Primul (și în cazul dat unicul) parametru/argument pentru această funcție este numit string, și este de tipul string.

Am putea rescrie definiția funcției anterioare într-o formă generică:

      tipul întors    numele funcției    ( tipul parametrului   numele parametrului )

Multe funcții preiau parametri multipli, cum ar fi in_array(). Prototipul său este după cum urmează:

      bool in_array ( mixed $needle, array $haystack [, bool $strict])

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ă.

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.

add a note add a note

User Contributed Notes 2 notes

up
1
ceo at l-i-e dot com
9 years ago
Another thing to watch for is the & in the argument list.

That generally means that the function is going to *CHANGE* the value you pass in, in some way, and you can't rely on it being the same as what you handed off to the function.
up
1
php dot devel at homelinkcs dot com
9 years ago
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).
To Top