Внатрешни (вградени) функции
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Внатрешни (вградени) функции
Референца за `functions.internal.php` со подобрена типографија и навигација.
Внатрешни (вградени) функции
PHP доаѓа стандардно со многу функции и конструкции. Постојат и функции кои бараат специфични PHP екстензии компајлирани, инаку ќе се појават фатални грешки „undefined function“. На пример, за да се користи image функции како imagecreatetruecolor(), PHP мора да биде компајлиран со GD поддршка. Или, за да се користи mysqli_connect(), PHP мора да биде компајлиран со MySQLi поддршка. Постојат многу основни функции кои се вклучени во секоја верзија на PHP, како што се string and variable функции. Повик до phpinfo() or get_loaded_extensions() ќе покаже кои екстензии се вчитани во PHP. Исто така, имајте предвид дека многу екстензии се овозможени по стандардниот и дека PHP прирачникот е поделен по екстензии. Погледнете ги configuration, installation, и поглавјата за индивидуални екстензии, за информации за тоа како да го поставите PHP.
Читањето и разбирањето на прототипот на функцијата е објаснето во делот од прирачникот насловен како да се прочита дефиниција на функција. Важно е да се сфати што враќа една функција или дали функцијата работи директно на вредност што е предадена. На пример, str_replace() ќе ја врати изменетата низа додека usort() работи директно на променливата што е предадена. Секоја страница од прирачникот исто така има специфични информации за секоја функција како информации за параметрите на функцијата, промени во однесувањето, вратени вредности за успех и неуспех, и информации за достапност. Познавањето на овие важни (но често суптилни) разлики е клучно за пишување правилен PHP код.
Забелешка: Ако параметрите дадени на функцијата не се она што таа очекува, како на пример предавање на array каде се очекува string , вратената вредност на функцијата е недефинирана. Во овој случај, веројатно ќе врати
nullно ова е само конвенција и не може да се потпрете на неа. Од PHP 8.0.0, во овој случај треба да се фрли TypeError exception.
Забелешка:
Скаларните типови за вградени функции се нуливи по стандард во коерзивен режим. Од PHP 8.1.0, предавањето на
nullна параметар на внатрешна функција што не е деклариран како нула се обесхрабрува и емитува известување за депрекација во коерзивен режим за да се усогласи со однесувањето на функциите дефинирани од корисникот, каде што скаларните типови мора експлицитно да бидат означени како нуливи.На пример, strlen() функцијата очекува параметарот
$stringда биде не-нуллив string. Од историски причини, PHP дозволува поминувањеnullза овој параметар во коерцивен режим, и параметарот имплицитно се претвора во string, што резултира со""вредност. Спротивно на тоа, во строг режим се емитува TypeError се емитува во строг режим.<?php
var_dump(strlen(null));
// "Deprecated: Passing null to parameter #1 ($string) of type string is deprecated" as of PHP 8.1.0
// int(0)
var_dump(str_contains("foobar", null));
// "Deprecated: Passing null to parameter #2 ($needle) of type string is deprecated" as of PHP 8.1.0
// bool(true)
?>