Home » Articole » Articole » Calculatoare » Programare » PHP » PHP: Funcții interne (încorporate)

PHP: Funcții interne (încorporate)

postat în: PHP 0

PHP vine standard cu multe funcții și constructe. Există, de asemenea, funcții care necesită extensii PHP specifice compilate, altfel vor apărea erori fatale de „funcție nedefinită”. De exemplu, pentru a utiliza funcții de imagine precum imagecreatetruecolor(), PHP trebuie să fie compilat cu suport GD. Sau, pentru a utiliza mysqli_connect(), PHP trebuie să fie compilat cu suport MySQLi. Există multe funcții de bază care sunt incluse în fiecare versiune de PHP, cum ar fi funcțiile șir și variabilele. Un apel la phpinfo() sau get_loaded_extensions() va arăta ce extensii sunt încărcate în PHP. De asemenea, rețineți că multe extensii sunt activate implicit și că manualul PHP este împărțit după extensie. Consultați capitolele de configurare, instalare și extensii individuale, pentru informații despre cum să configurați PHP.

Citirea și înțelegerea prototipului unei funcții este explicată în secțiunea manualului intitulată Cum se citește definiția unei funcții. Este important să ne dăm seama ce returnează o funcție sau dacă o funcție funcționează direct pe o valoare transmisă. De exemplu, str_replace() va returna șirul modificat în timp ce usort() lucrează pe variabila reală transmisă în sine. Fiecare pagină de manual are, de asemenea, informații specifice pentru fiecare funcție, cum ar fi informații despre parametrii funcției, modificări de comportament, valori returnate atât pentru succes, cât și pentru eșec și informații despre disponibilitate. Cunoașterea acestor diferențe importante (dar adesea subtile) este crucială pentru scrierea corectă a codului PHP.

Notă: Dacă parametrii dați unei funcții nu sunt cei așteptați, cum ar fi trecerea unei matrice în care este așteptat un șir, valoarea returnată a funcției este nedefinită. În acest caz, probabil va returna null, dar aceasta este doar o convenție și nu se poate baza pe aceasta. Începând cu PHP 8.0.0, o excepție TypeError ar trebui să fie folosită în acest caz.

Notă: Tipurile scalare pentru funcțiile încorporate sunt anulabile în mod implicit în modul coercitiv. Începând cu PHP 8.1.0, trecerea null a unui parametru de funcție intern care nu este declarat nulă este descurajată și emite o notificare de depreciere în modul coercitiv pentru a se alinia cu comportamentul funcțiilor definite de utilizator, unde tipurile scalare trebuie marcate ca nulabile în mod explicit .

De exemplu, funcția strlen() așteaptă ca parametrul $string să fie un șir care nu poate fi anulat. Din motive istorice, PHP permite trecerea null pentru acest parametru în modul coercitiv, iar parametrul este implicit transformat în șir, rezultând o valoare "". În schimb, o TypeError este emisă în modul strict.


<?php
var_dump(strlen(null));
// "Depreciat: trecerea null
la parametrul #1 ($string) de tip șir este depreciată" începând
cu PHP 8.1.0
// int(0)

var_dump(str_contains("foobar",
null));
// "Depreciat: trecerea null
la parametrul #1 ($needle) de tip șir este depreciată" începând
cu PHP 8.1.0
// bool(adevărat)
?>

Sursa: PHP Manual, licența CC BY 3.0. Traducere și adaptare: Nicolae Sfetcu

Ghid WordPress pentru dezvoltatori
Ghid WordPress pentru dezvoltatori

Resursa esențială care te va ghida pas cu pas în lumea complexă a platformei WordPress.

Nu a fost votat 19.11 lei Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.
Ghid WordPress pentru începători
Ghid WordPress pentru începători

Descoperă arta gestionării site-urilor web cu WordPress!

Nu a fost votat 14.32 lei26.24 lei Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.
Proiectarea, dezvoltarea şi întreţinerea siturilor web
Proiectarea, dezvoltarea şi întreţinerea siturilor web

Ghidul complet pentru proiectarea, dezvoltarea și întreținerea siturilor web, o resursă indispensabilă

Nu a fost votat 14.32 lei57.32 lei Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *