Annexes
PHP Manual

Historique des modifications

Les modifications suivantes ont été apportées aux fonctions des extensions embarquées.

VersionFunctionDescription
Avant 5.1.0get_parent_classSi appelée sans paramètre en dehors de l'objet, cette fonction aurait retourné NULL avec une alerte.
avant 4.3.5dba_openle mode "c" est inopérant pour de nombreux gestionnaires internes, et tronque la base au lieu d'ajouter les données à la base existante. De plus, dbm et ndbm échoue en mode "c" dans des configurations typiques (impossible à corriger).
5.4.1hex2binUn avertissement est émis si la chaîne en entrée est de longueur impaire. Avec PHP 5.4.0, la chaîne était acceptée silencieusement, mais le dernier octet était tronqué.
5.4.0apache_child_terminateCette fonction devient disponible pour FastCGI. Précédemment, elle n'était disponible que lorsque PHP était installé comme module Apache.
 apache_request_headersCette fonction devient disponible pour FastCGI. Précédemment, elle n'était disponible que lorsque PHP était installé comme module Apache.
 apache_response_headersCette fonction devient disponible pour FastCGI. Précédemment, elle n'était disponible que lorsque PHP était installé comme module Apache.
 array_combineLes précédentes versions lancées une alerte de niveau E_WARNING et retournées FALSE pour des tableaux vides.
 date_default_timezone_getLe décalage horaire n'est plus deviné depuis les informations disponibles via le système d'exploitation.
 date_default_timezone_getLa variable d'environnement TZ n'est plus utilisée pour deviner le décalage horaire.
 debug_backtraceLe paramètre optionnel limit a été ajouté.
 debug_print_backtraceAjout du paramètre optionnel limit.
 emptyLa vérification des positions non-numériques d'une chaîne retourne maintenant TRUE.
 error_reportingE_STRICT devient une partie de E_ALL.
 get_html_translation_tableLa valeur par défaut du paramètre encoding a changé en UTF-8.
 get_html_translation_tableLes constantes ENT_HTML401, ENT_XML1, ENT_XHTML et ENT_HTML5 ont été ajoutées.
 get_magic_quotes_gpcRetourne toujours FALSE car la fonctionalité des guillemets magiques a été supprimée de PHP.
 get_magic_quotes_runtimeRetourne toujours FALSE car la fonctionalité des guillemets magiques a été supprimée de PHP.
 getallheadersCette fonction devient disponible pour FastCGI. Précédemment, elle n'était disponible que lorsque PHP était installé comme module Apache.
 html_entity_decodeL'encodage par défaut a changé de ISO-8859-1 à UTF-8.
 html_entity_decodeLes constantes ENT_HTML401, ENT_XML1, ENT_XHTML et ENT_HTML5 ont été ajoutées.
 htmlentitiesLes constantes ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_XML1, ENT_XHTML et ENT_HTML5 ont été ajoutées.
 htmlentitiesLa valeur par défaut du paramètre encoding est maintenant UTF-8.
 htmlspecialcharsLes constantes ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_XML1, ENT_XHTML et ENT_HTML5 ont été ajoutées.
 htmlspecialcharsLa valeur par défaut du paramètre encoding est passée à UTF-8.
 htmlspecialchars_decodeLes constantes ENT_HTML401, ENT_XML1, ENT_XHTML et ENT_HTML5 ont été ajoutées.
 http_build_queryLe paramètre enc_type a été ajouté.
 imagecolorsetLe paramètre alpha a été ajouté.
 issetLa vérification de positions non-numériques d'une chaîne retourne maintenant FALSE.
 json_decodeLe paramètre options a été ajouté.
 json_encodeLes options JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES et JSON_UNESCAPED_UNICODE ont été ajoutées.
 number_formatCette fonction supporte maintenant des paramètres dec_point et thousands_sep comportant plusieurs caractères. Seul le premier caractère était utilisé avant.
 ob_startUne taille de morceau de 1 résulte maintenant en 1 octet envoyé au buffer de sortie.
 preg_match_allLe paramètre matches devient optionnel.
 scandirLa constante sorting_order a été ajoutée. Toute valeur différente de zéro provoquera un ordre décroissant dans les anciennes versions. Aussi, pour toutes les versions de PHP, utilisez 0 pour un ordre croissant, et 1 pour un ordre décroissant. L'option pour le comportement de SCANDIR_SORT_NONE n'existe pas avant la version 5.4.0 de PHP.
 session_set_save_handlerAjout de l'interface SessionHandlerInterface pour implémenter les gestionnaires de sessions et de la classe SessionHandler pour exposer les gestionnaires de sessions internes de PHP.
 snmp_set_valueretrievalLa constante SNMP_VALUE_PLAIN ou la constante SNMP_VALUE_LIBRARY peut être combinée à la constante SNMP_VALUE_OBJECT permettant ainsi une représentation différente du contenu des éléments du tableau value dans la valeur retournée de la fonction. Si aucune des constantes SNMP_VALUE_{PLAIN,LIBRARY} n'accompagne SNMP_VALUE_OBJECT, SNMP_VALUE_LIBRARY sera utilisé. Avant la version 5.4.0, SNMP_VALUE_OBJECT signifiait effectivement SNMP_VALUE_OBJECT|SNMP_VALUE_PLAIN.
 sortAjout du support des constantes SORT_NATURAL et SORT_FLAG_CASE pour le paramètre sort_flags
 SoapClient::SoapClientAjout de l'option keep_alive.
5.3.9is_aAjout du paramètre allow_string.
 is_subclass_ofAjout du paramètre allow_string.
5.3.7cryptAjout de deux nouveaux modes Blowfish $2x$ et $2y$ pour éviter de potentielles attaques.
5.3.6DateTime::modifyLes requêtes date/heure absolues prennent maintenant effets. Auparavant, seules les parties relatives étaient utilisées.
 DOMDocument::saveHTMLLe paramètre node a été ajouté.
 debug_backtraceLe paramètre provide_object a été modifié en options et d'autres options DEBUG_BACKTRACE_IGNORE_ARGS ont été ajoutées.
 debug_print_backtraceAjout du paramètre optionnel options.
 preg_matchRetourne FALSE si offset est plus grand que la taille de subject.
 preg_match_allRetourne FALSE si offset est plus grand que la taille de subject.
 PDO_MYSQL DSNAvant la version 5.3.6, charset était ignoré.
5.3.4get_html_translation_tableLe paramètre encoding a été ajouté.
 rawurlencodeLes caractères tildes (~) ne sont plus encodés lorsque la fonction rawurlencode est utilisée avec les chaînes EBCDIC.
 sleepAvant PHP 5.3.4, sous Windows, sleep retournait toujours NULL, indépendamment du fait que la fonction ait été interrompue ou non.
5.3.3DOMXPath::evaluateAjout du paramètre registerNodeNS.
 DOMXPath::queryAjout du paramètre registerNodeNS.
 json_encodeL'option JSON_NUMERIC_CHECK a été ajoutée.
 ldap_sasl_bindLe support Windows a été ajouté.
 openssl_decryptLe paramètre iv a été ajouté.
 openssl_encryptLe paramètre iv a été ajouté.
 parse_urlSuppression du E_WARNING émis lorsque l'URL était invalide.
5.3.2 (PECL OCI8 1.4)oci_set_prefetchAvant cette version, rows doit être >= 1.
5.3.2cryptCorrection du comportement de Blowfish lors d'étape invalide où une chaîne d'échec ("*0" ou "*1") était retournée au lieu de retourner le DES dans ce cas.
 cryptAjout de SHA-256 et de SHA-512 basés sur l'implementation de Ulrich Drepper.
 flockLe déverrouillage automatique lorsque la ressource de fichiers est fermée a été supprimée. Le déverrouillage doit maintenant être effectuée manuellement.
 gmp_initLe paramètre base a été étendu de "2 à 36", à "2 à 62" et "-2 à -36".
 gmp_strvalLe paramètre base a été étendu de "2 à 36", à "2 à 62" et "-2 à -36".
 imap_appendAjout du support INTERNALDATE à imap_append.
 imap_openLe paramètre params a été ajouté.
5.3.1get_defined_constantsWindows uniquement : Les constantes internes sont catégorisées sous Core, précédemment, elles l'étaient sous mhash.
 ibase_queryEn cas de succès, cette fonction retourne maintenant TRUE s'il n'y a aucune ligne d'affectée, alors qu'elle retournait auparavant 0 (un zéro suivi d'un espace vide).
 renamerename peut maintenant renommer des fichiers entre différents lecteurs Windows.
5.3.0DateTime::__constructSi une date invalide est précisée, une exception est maintenant levée. Auparavant, une erreur était émise.
 DateTime::modifyChangement de valeur de retour de NULL à DateTime en cas de succès.
 DateTime::setDateChangement de valeur de retour de NULL à DateTime en cas de succès.
 DateTime::setISODateChangement de valeur de retour de NULL à DateTime en cas de succès.
 DateTime::setTimeChangement de valeur de retour de NULL à DateTime en cas de succès.
 DateTime::setTimezoneChangement de valeur de retour de NULL à DateTime en cas de succès.
 DateTimeZone::getTransitionsLes paramètres optionnels timestamp_begin et timestamp_end ont été ajouté.
 DateTimeZone::listIdentifiersAjout des paramètres optionnels what et country.
 DirectoryIterator::__constructÉmet une exception UnexpectedValueException si le paramètre path ne peut être ouvert.
 acoshCette fonction est maintenant disponible sur toutes les plate-formes
 array_key_existsCette fonction ne fonctionne plus avec les objets. La fonction property_exists doit être utilisée dans ce cas.
 array_reduceModification du paramètre initial afin d'autoriser des variables de types mixtes (mixed) ; auparavant, uniquement des entiers.
 array_searchComme toutes les fonctions internes de PHP depuis 5.3.0, la fonction array_search retournera NULL si des paramètres invalides sont passés à la fonction.
 asinhCette fonction est maintenant disponible sur toutes les plate-formes
 atanhCette fonction est maintenant disponible sur toutes les plate-formes
 call_user_funcL'interprétation des mots-clés du modèle objet comme parent et self a changé. Avant, les appeler avec la syntaxe à double deux-points envoyait une erreur E_STRICT à cause de l'interprétation statique.
 call_user_func_arrayL'interprétation des mots-clés du modèle objet comme parent et self a changé. Avant, les appeler avec la syntaxe à double deux-points envoyait une erreur E_STRICT à cause de l'interprétation statique.
 checkdnsrrCette fonction est maintenant disponible sous Windows.
 clearstatcacheAjout des paramètres optionnels clear_realpath_cache et filename.
 copyAjout du support du contexte.
 cryptPHP dispose maintenant de sa propre implémentation de crypt MD5, Standard DES, Extended DES et l'algorithme Blowfish. Il l'utilisera si le système ne fournit pas l'un ou l'autre des algorithmes.
 date_default_timezone_setÉmet maintenant une alerte de type E_WARNING plutôt qu'une alerte de type E_STRICT.
 define_syslog_variablesCette fonction lance maintenant des alertes de type E_DEPRECATED.
 dldl est maintenant désactivé dans quelques SAPIs en raison de son instabilité. Le seul SAPI qui active dl sont CLI et Embed. Utilisez les directives de chargement d'extension à la place.
 dns_get_recordAvant cette version, si le paramètre authns est passé, le paramètre addtl était également nécessaire.
 dns_get_recordCette fonction est maintenant disponible sous Windows.
 error_reportingE_DEPRECATED et E_USER_DEPRECATED ont été introduits.
 exif_imagetypeAjout du support icon.
 expm1Cette fonction est maintenant disponible sur toutes les plate-formes
 fgetcsvLe paramètre escape a été ajouté.
 fnmatchCette fonction est maintenant disponible sous Windows.
 func_get_argSi cette fonction est appelée depuis le scope le plus éloigné d'un fichier qui a été inclus via include ou require depuis l'intérieur d'une fonction du fichier appelant, elle génère une alerte et retourne FALSE.
 func_get_argCette fonction peut maintenant être utilisée dans des listes de paramètres.
 func_get_argsSi cette fonction est appelée dans un fichier inclus avec include ou require logé dans une fonction, elle génèrera une alerte et retournera FALSE.
 func_get_argsCette fonction peut maintenant être utilisée dans des listes de paramètres.
 func_num_argsSi cette fonction est appelée dans un fichier inclus avec include ou require logé dans une fonction, elle génèrera une alerte et retournera -1.
 func_num_argsCette fonction peut maintenant être utilisée dans des listes de paramètres.
 gd_infoL'attribut JPG Support est renommé en JPEG Support.
 get_cfg_varget_cfg_var a été modifié afin de permettre de retourner un tableau de directives.
 get_classNULL est devenue la valeur par défaut pour object, donc passer NULL pour object a le même effet que de laisser le paramètre vide.
 get_defined_constantsLes constantes internes sont maintenant catégorisées sous Core alors qu'elles l'étaient sous internal auparavant. Sous WIndows, les constantes internes étaient catégorisées sous mhash.
 get_object_varsCette fonction retourne maintenant NULL si le paramètre object n'est pas un objet. Précédemment, FALSE était retourné.
 getimagesizeAjout du support des icônes.
 getmxrrCette fonction est maintenant disponible sous Windows.
 getoptLe paramètre longopts est disponible sur tous les systèmes.
 getoptAjout du support de "=" comme séparateur argument/valeur.
 getoptCette fonction n'est plus dépendante du système et fonctionne maintenant également sous Windows.
 getoptAjout du support des valeurs optionnelles (spécifié par "::").
 htmlentitiesLa constante ENT_IGNORE a été ajoutée.
 htmlspecialcharsLa constante ENT_IGNORE a été joutée.
 imagecolorclosesthwbCette fonction est désormais disponible sous Windows
 imagefilterSupport de la pixelisation (IMG_FILTER_PIXELATE) ajouté.
 inet_ntopCette fonction est maintenant disponible sur les plate-formes Windows.
 inet_ptonCette fonction est maintenant disponible sur les plate-formes Windows.
 ini_get_allAjout du paramètre details.
 is_aCette fonction n'est plus obsolète, et ne lancera donc plus d'alerte de type E_STRICT.
 json_decodeAjout du paramètre optionnel depth. La profondeur de récursion par défaut a augmenté de 128 à 512
 json_encodeLe paramètre options a été ajouté.
 linkCette fonction est maintenant disponible sous Windows (Vista, Server 2008 ou plus récent).
 linkinfoCette fonction est maintenant disponible sous Windows (Vista, Server 2008 ou plus récent).
 log1pCette fonction est maintenant disponible sur toutes les plate-formes
 mb_get_infoL'élément "http_output_conv_mimetypes" a été ajouté.
 mcrypt_create_ivMCRYPT_DEV_RANDOM et MCRYPT_DEV_URANDOM deviennent disponibles sous Windows.
 mcrypt_create_ivIl n'est plus nécessaire d'appeler srand dans un premier temps. Cet appel est maintenant fait automatiquement.
 mktimemktime lance maintenant une alerte de type E_DEPRECATED si le paramètre is_dst est utilisé.
 mysql_db_queryCette fonction lance maintenant une alerte de type E_DEPRECATED.
 mysql_escape_stringCette fonction lance maintenant une alerte de type E_DEPRECATED.
 nl2brAjout du paramètre optionnel is_xhtml.
 parse_ini_fileAjout du paramètre optionnel scanner_mode. Les guillemets simples doivent maintenant être utilisés autour des assignements de variables. Le caractère dièse (#) ne peut plus être utilisé comme commentaire, et émettra une alerte si vous l'utilisez.
 pg_lo_createLe paramètre optionnel object_id a été ajouté.
 pg_lo_importLe paramètre optionnel object_id a été ajouté.
 preg_quoteLe caractère - est maintenant protégé.
 property_existsCette fonction vérifie l'existence d'une propriété indépendamment de l'accessibilité.
 rawurlencodeConformité avec la RFC 3986.
 readlinkCette fonction est maintenant disponible sous Windows (Vista, Server 2008 ou plus récent).
 realpathAvant cette version, si le dernier composant path n'existe pas, realpath n'échouera pas sous les systèmes *BSD dans ce cas.
 register_tick_functionLes ticks sont maintenant supportés sur les serveurs Web threadés.
 roundLe paramètre mode a été ajouté.
 session_startSi une session n'arrive pas à démarrer, alors FALSE est retourné. Précédemment TRUE était retourné.
 setlocaleCette fonction émet désormais une alerte E_DEPRECATED si une chaîne est passée comme paramètre category au lieu d'une des constantes LC_*.
 shm_attachLa fonction retourne une ressource à la place d'un entier.
 socket_create_pairCette fonction a été ré-activée sous Windows.
 spl_autoload_registerAjout du support des espaces de noms.
 spl_autoload_registerLe paramètre prepend a été ajouté.
 stream_context_createAjout de l'argument optionnel params.
 stream_socket_pairCette fonction est maintenant disponible sous Windows.
 stristrAjout du paramètre optionnel before_needle.
 strlenLes anciennes versions traitaient un tableau comme la chaîne de caractères Array, et ainsi, retournaient la longueur de la chaîne 5 et émettaient une erreur de niveau E_NOTICE.
 strstrAjout du paramètre optionnel before_needle.
 strtotimeAvant PHP 5.3.0, 24:00 n'était pas un format valide et strtotime retournait FALSE.
 sybase_connectLe paramètre new a été ajouté.
 symlinkCette fonction est maintenant disponible sous Windows (Vista, Server 2008 ou plus récent).
 time_nanosleepCette fonction est maintenant disponible sous Windows.
 time_sleep_untilCette fonction est maintenant disponible sous Windows.
 touchIl devient possible de changer la date et heure de modification d'un dossier sous Windows.
 mysqli::__constructAjout des connexions persistantes.
 mysqli::queryAjout des requêtes asynchrones.
 ReflectionFunction::__constructname autorise maintenant les fermetures.
 SplObjectStorage::attachAjout du paramètre data.
5.3 (PECL OCI8 1.3.4)oci_set_prefetchAvant cette version, le préchargement était limité et devait être inférieur aux nombres de lignes définies par le paramètre rows ainsi qu'à 1024 * rows octets. La restriction sur la taille en octets a maintenant disparu.
5.2.15 & 5.3.4mysqli_reportLe rapport d'erreur se fait maintenant par requête et non plus par processus.
5.2.11get_defined_constantsLe paramètre categorize agit maintenant comme entendu. Avant, le paramètre categorize était interprété comme !is_null($categorize), faisant que n'importe quelle valeur autre que NULL forçait la constante a être catégorisée.
5.2.10array_randLes clés du tableau résultant ne sont plus mélangées.
 array_uniqueChangement de la valeur par défaut de sort_flags à nouveau vers SORT_STRING.
 curl_setoptAjout de CURLOPT_PROTOCOLS et CURLOPT_REDIR_PROTOCOLS.
 ip2longAvant cette version, ip2long retourne parfois un nombre valide même si la valeur passée n'est pas une adresse pointée (IPv4).
 natsortLes chaines numériques alignées par des zéros (e.g., '00005') ignorent les zéros d'alignement.
5.2.9array_uniqueAjout du paramètre optionnel sort_flags, qui faut par défaut SORT_REGULAR. Avant 5.2.9, cette fonction utilisait par défaut SORT_STRING, en interne.
5.2.8XSLTProcessor::importStylesheetAccepte de nouveau SimpleXMLElement depuis PHP 5.2.6 alors qu'il était cassé auparavant.
5.2.7error_logLa valeur possible pour 4 a été ajoutée à message_type.
 parse_ini_fileEn cas d'erreur de syntaxe, la fonction retourne maintenant FALSE au lieu d'un tableau vide.
 roundLe fonctionnement interne de round a été modifié afin d'être conforme au standard C99.
 strtotimeEn PHP 5 avant 5.2.7, demander le jour de la semaine correspondant au premier jour du mois ajoute de manière incorrecte une semaine au timestamp retourné. Ceci a été corrigé dans PHP 5.2.7 et supérieur.
5.2.6fopenLes options 'c' et 'c+' ont été ajoutées.
5.2.5addcslashesLes séquences \v et \f ont été ajoutées.
 debug_backtraceAjout du paramètre optionnel provide_object.
 imagefilterLe support du canal Alpha pour la constante IMG_FILTER_COLORIZE a été ajouté.
5.2.4checkdnsrrLe type TXT a été ajouté.
 get_loaded_extensionsLe paramètre optionnel zend_extensions a été ajouté
 ldap_first_attributeLe paramètre ber_identifier a été supprimé. Il est maintenant géré automatiquement par PHP.
 ldap_next_attributeLe paramètre ber_identifier a été supprimé. Il est maintenant géré automatiquement par PHP.
 parse_ini_fileLes noms de section et les clés, composés de numéros, sont maintenant évalués comme des entiers, ceux commençant par un 0 seront évalués comme des octales, et ceux commençant par 0x, comme des hexadécimaux.
 stream_wrapper_registerAjout du paramètre flags.
5.2.3getimagesizeLes erreurs de lecture générées par cette fonction passent de niveau E_WARNING à E_NOTICE.
 htmlentitiesAjout du paramètre double_encode.
 htmlspecialcharsAjout du paramètre double_encode.
 json_decodeLa limite a été élevée de 20 à 128
 XMLWriter::writeElementLe paramètre content est devenu optionnel.
 XMLWriter::writeElementNSLe paramètre content est devenu optionnel.
 PDOStatement::getColumnMetachamps table
5.2.2 - 5.2.6substrSi start est hors de la chaine, false est retourné. Les autres versions récupèrent la chaîne depuis le début.
5.2.2DOMDocument::registerNodeClassAvant la version 5.2.2, une classe extendedclass précédemment enregistrée devait être supprimées avant de pouvoir en enregistrer une nouvelle étendant la même classe baseclass.
 ftp_ssl_connectCette fonction retourne FALSE lorsqu'elle ne peut pas utiliser une connexion SSL, au lieu d'utiliser à la place une connexion non-SSL.
 phpinfoL'information "Loaded Configuration File" a été ajoutée, alors qu'avant, seule l'information "Configuration File (php.ini) Path" existée.
 preg_matchLes sous-masques nommés acceptent maintenant la syntaxe (?<name>) et (?'name') mais aussi (?P<name>). Les anciennes versions n'acceptaient que la syntaxe (?P<name>).
 preg_match_allLes sous-masques nommés acceptent maintenant les syntaxes (?<name>), (?'name') ainsi que (?P<name>). Les précédentes versions n'acceptaient que la syntaxe (?P<name>).
 proc_terminateLes versions précédentes détruisent la ressource resource fournie.
 token_get_allLes numéros de lignes sont retournés dans l'élément 2
5.2.1iterator_to_arrayAjout du paramètre use_keys.
 json_decodeAjout du support du décodage JSON des types basiques.
 memory_get_peak_usageLa compilation avec l'option de configuration --enable-memory-limit n'est plus nécessaire pour que cette fonction existe.
 memory_get_usageLa compilation avec l'option de configuration --enable-memory-limit n'est plus nécessaire pour que cette fonction existe.
 mt_srandL'implémentation Mersenne Twister en PHP utilise maintenant un nouvel algorithme d'initialisation, réalisé par Richard Wagner. Des initialisations identiques ne produisent plus la même séquence de valeurs, comme cela pouvait être le cas dans les versions antérieures. Ce comportement ne devrait plus changer.
 proc_openAjout de l'option bypass_shell au paramètre other_options.
5.2.0base64_decodeLe paramètre strict a été ajouté
 curl_multi_info_readLe paramètre msgs_in_queue a été ajouté.
 error_reportingE_RECOVERABLE_ERROR est introduit.
 imagettftextIl est maintenant possible de spécifier une entitée hexadécimal dans text.
 imap_openLe paramètre n_retries a été ajouté.
 imap_reopenLe paramètre n_retries a été ajouté
 mb_strrposAjout du paramètre optionnel offset.
 memory_get_peak_usageLe paramètre real_usage a été ajouté.
 memory_get_usageLe paramètre real_usage a été ajouté.
 openssl_verifyAjout du paramètre signature_alg.
 pathinfoLa constante PATHINFO_FILENAME a été ajoutée.
 pg_escape_byteaLe paramètre connection a été ajouté.
 pg_escape_stringLe paramètre connection a été ajouté.
 session_get_cookie_paramsL'entrée "httponly" a été ajouté dans le tableau retourné.
 session_set_cookie_paramsAjout du paramètre httponly.
 set_error_handlerLe gestionnaire d'erreurs doit retourner FALSE pour peupler la variable $php_errormsg.
 setcookieLe paramètre httponly a été ajouté.
 setrawcookieAjout du paramètre httponly.
 snmp_set_oid_numeric_printDepuis PHP 5.2.0.
 PDOStatement::executeLes clés déclarées dans input_parameters doivent correspondre à celles déclarées dans le SQL. Avant PHP 5.2.0, ceci était ignoré sans erreur.
 SimpleXMLElement::childrenLe paramètre optionnel is_prefix a été ajouté.
 SoapServer::SoapServerAjout de l'option typemap.
 SWFMovie::streamMP3Le paramètre skip a été ajouté
 XMLReader::openLes paramètres encoding et options ont été ajoutés.
 XMLReader::XMLLes paramètres encoding et options ont été ajoutés.
5.1.3DirectoryIterator::__constructÉmet une exception RuntimeException si le paramètre path est une chaîne vide.
 curl_getinfoAjout de CURLINFO_HEADER_OUT.
 get_headersCette fonction utilise le contexte de flux de défaut, qui peut être fixé/changé avec la fonction stream_context_set_default.
 http_build_queryLes crochets sont échappés.
 imagecolorallocateRetourne FALSE si l'allocation échoue. Précédemment, -1 était retourné.
 imagecolorallocatealphaRetourne FALSE si l'allocation échoue. Précédemment, -1 était retourné.
 imagepngAjout du paramètre filters.
 mb_get_infoLes types d'élément "mail_charset", "mail_header_encoding", et "mail_body_encoding" sont maintenant disponibles.
 SoapClient::__doRequestLe paramètre one_way a été ajouté.
 XMLReader::getAttributeRetourne NULL si aucun attribut n'est trouvé. Précédemment, la fonction retournait une chaîne vide dans ce cas.
5.1.2date_default_timezone_setLa fonction commence à valider le paramètre timezone_identifier.
 http_build_queryLe paramètre arg_separator a été ajouté.
 imagepngAjout du paramètre quality.
 parse_urlAjout du paramètre component
5.1.1dateIl y a plusieurs constantes utiles de formats date/heure standards qui peuvent être utilisées pour spécifier le paramètre format.
 debug_backtraceAjout de l'objet courant comme élément de retour possible.
 gmdateIl y a quelques constants utiles pour les formats standards date/heure qui peuvent être utilisées dans le paramètre format.
5.1.0DirectoryIterator::__constructÉmet une exception RuntimeException en cas d'erreur. Précédemment, une exception Exception était lancée.
 DOMDocument::saveAjout du paramètre options
 DOMDocument::saveXMLAjout du paramètre options
 class_implementsAjout de l'option pour passer le paramètre class en tant que chaîne de caractères. Ajout du paramètre autoload.
 class_parentsAjout de l'option pour passer le paramètre en tant que chaîne de caractères
 ctype_digitAvant PHP 5.1.0, cette fonction retournait TRUE lorsque le paramètre text était une chaîne vide.
 curl_setoptAjout de CURLOPT_AUTOREFERER, CURLOPT_BINARYTRANSFER, CURLOPT_FTPSSLAUTH, CURLOPT_PROXYAUTH et CURLOPT_TIMECONDITION.
 dateÉmet un message de type E_STRICT et E_NOTICE lors d'erreurs de fuseaux horaires.
 dateL'intervalle de validité d'un timestamp va généralement du Vendredi 13 Décembre 1901 20:45:54 GMT au Mardi 19 Janvier 2038 03:14:07 GMT. (Ces dates correspondent aux valeurs minimales et maximales des entiers 32 bits non-signés). Cependant, avant PHP 5.1.0, cette intervalle va du 01-01-1970 au 19-01-2038 sur quelques systèmes (e.g. Windows).
 date_sunriseÉmet un message de type E_STRICT et E_NOTICE lors d'erreurs de fuseaux horaires.
 date_sunsetÉmet un message de type E_STRICT et E_NOTICE lors d'erreurs de fuseaux horaires.
 explodeLe paramètre limit peut désormais être négatif
 file_get_contentsAjout des paramètres offset et maxlen.
 file_put_contentsAjout du support de LOCK_EX et la possibilité de passer une ressource de flux dans le paramètre data.
 gettimeofdayLe paramètre return_float a été ajouté.
 globGLOB_ERR a été ajouté
 gmdateL'intervalle de validité d'un timestamp est typiquement depuis le Vendredi 13 Décembre 1901 20:45:54 GMT au 19 Janvier 2038 03:14:07 GMT. (ce qui correspond aux valeurs minimales et maximales d'un entier 32 bits signé). Cependant, avant PHP 5.1.0, cet intervalle était limité de 01-01-1970 à 19-01-2038 sous quelques systèmes (e.g. Windows).
 gmmktimeDepuis PHP 5.1.0, le paramètre is_dst est devenu obsolète. Comme résultat, le nouveau gestionnaire de fuseau horaire doit être utilisé à la place.
 idateÉmet un message de type E_STRICT et E_NOTICE lors d'erreurs de fuseaux horaires.
 imagerotateLe paramètre ignore_transparent a été ajouté.
 intvalLance une alerte de type E_NOTICE et retourne 1 lorsqu'un objet est passé au paramètre var.
 localtimeÉmet un message de type E_STRICT et E_NOTICE lors d'erreurs de fuseaux horaires.
 md5_fileLa fonction a changé pour utiliser les flux API. Cela signifie que vous pouvez l'utiliser avec des enveloppes, comme md5_file('http://example.com/..')
 mktimeLorsqu'appelée sans argument, la fonction mktime émet une alerte de type E_STRICT. Utilisez la fonction time à la place.
 mktimeÉmet un message de type E_STRICT et E_NOTICE lors d'erreurs de fuseaux horaires.
 mktimeLe paramètre is_dst est obsolète. Fait que la fonction retourne FALSE en cas d'erreur, au lieu de -1. La fonction a été modifiée pour accepter la valeur zéro comme année, mois ou bien jour.
 openssl_pkcs7_verifyAjout du paramètre content.
 preg_replaceAjout du paramètre count
 preg_replace_callbackLe paramètre count a été ajouté.
 session_regenerate_idAjout du paramètre delete_old_session.
 sha1_fileLa fonction a changé pour utiliser les flux API. Cela signifie que vous pouvez l'utiliser avec des enveloppes, comme sha1_file('http://example.com/..')
 sqlite_execAjout du paramètre error_msg
 sqlite_fetch_column_typesAjout de result_type
 sqlite_queryAjout du paramètre error_msg
 sqlite_unbuffered_queryAjout du paramètre error_msg
 str_word_countAjout du paramètre charlist
 stream_copy_to_streamAjout du paramètre offset
 stream_filter_appendAvant PHP 5.1.0, cette fonction retournait TRUE en cas de succès ou FALSE si une erreur survient.
 stream_filter_prependAvant PHP 5.1.0, cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.
 stream_get_contentsLe paramètre offset a été ajouté.
 strftimeÉmet un message de type E_STRICT et E_NOTICE lors d'erreurs de fuseaux horaires.
 strtotimeÉmet un message de type E_STRICT et E_NOTICE lors d'erreurs de fuseaux horaires.
 strtotimeLa fonction retourne maintenant FALSE en cas d'échec, au lieu de -1.
 substr_compareAjout de la possibilité d'utiliser une valeur négative pour le paramètre offset.
 substr_countAjout des paramètres offset et length
 var_exportPossibilité d'exporter des classes et des tableaux contenant des classes en utilisant la méthode magique __set_state.
 XSLTProcessor::registerPHPFunctionsLe paramètre restrict a été ajouté.
5.0.5php_check_syntaxCette fonction a été supprimée de PHP.
5.0.4sqlite_keyDans les versions antérieures à PHP 5.0.4, sqlite_key était uniquement capable d'être appelé en tant que méthode de l'objet SQLiteResult et non de façon procédurale.
5.0.3get_class_varsEn fonction du contexte, get_class_vars ne retourne que les propriétés qui sont accessibles depuis ce contexte.
 is_subclass_ofvous pouvez également spécifier le paramètre object en tant que chaîne de caractères (le nom de la classe).
 php_check_syntaxAppel à exit après php_check_syntax cause une erreur de segmentation.
5.0.2array_sliceLe paramètre optionnel preserve_keys a été ajouté.
 class_existsNe retourne plus TRUE pour les interfaces définies. Utilisez la fonction interface_exists.
 get_class_varsAppeler get_class_vars produit toutes les propriétés sous la forme d'un tableau, contrairement au comportement précédent où les propriétés privées et protégées étaient préfixées par des caractères null.
 sortAjout de la constante SORT_LOCALE_STRING
 strtotimeEn PHP 5 jusqu'à 5.0.2, "now" et les autres temps relatifs sont mal calculés depuis minuit d'aujourd'hui. Dans les autres versions, le calcul est correct.
5.0.1get_class_varsAppeler get_class_vars retourne toutes les propriétés, exactement comme lors de la conversion d'un objet en tableau.
 php_check_syntaxerror_message est passé par référence.
5.0.0.proc_openAjout des paramètres cwd, env et other_options.
5.0.0apache_get_modulesCette fonction est devenue disponible lors de l'utilisation d'Apache 1 ou de l'API "filter" de PHP Apache 2. Avant cette version, elle n'était disponible qu'en utilisant l'API "handler" d'Apache 2.
 apache_get_versionDevenue disponible avec l'API "filter" d'Apache 2.
 array_keysAjout du paramètre strict.
 array_mergeLe comportement de array_merge a été modifié en PHP 5. Contrairement à PHP 4, array_merge n'accepte que des paramètres de type array. Cependant, vous pouvez utiliser le transtypage pour fusionner les autres types de valeurs. Voyez l'exemple ci-dessous. Exemples PHP 5 avec array_merge <?php $beginning = 'foo'; $end = array(1 => 'bar'); $result = array_merge((array)$beginning, (array)$end); print_r($result); ?> L'exemple ci-dessus va afficher : Array ( [0] => foo [1] => bar )
 checkdnsrrLe type AAAA a été ajouté.
 class_existsLa paramètre autoload a été ajouté.
 com_releaseCette fonction a été effacée.
 curl_setoptAjout de CURLOPT_FTP_USE_EPRT, CURLOPT_NOSIGNAL, CURLOPT_UNRESTRICTED_AUTH, CURLOPT_BUFFERSIZE, CURLOPT_HTTPAUTH, CURLOPT_PROXYPORT, CURLOPT_PROXYTYPE, CURLOPT_SSLCERTTYPE et CURLOPT_HTTP200ALIASES.
 dirnamedirname gère maintenant les données binaires.
 emptyLes objets n'ayant pas de propriété ne sont plus considérés comme vide.
 error_reportingE_STRICT est introduit (ne fait plus partie de E_ALL).
 extension_loadedextension_loaded utilise le nom interne de l'extension pour vérifier si une extension est disponible ou pas. La plupart des extensions ont des noms internes écrits en minuscules, mais il peut arriver que certaines aient des noms en majuscules. Avant PHP 5, cette fonction comparait les noms en ne tenant pas compte de la casse.
 fgetssLe paramètre length devient optionnel.
 fileAvant PHP 5.0.0, le paramètreflags ne couvre que l'include_path et est activé s'il vaut 1.
 fileLe paramètre context a été ajouté.
 file_get_contentsAjout du support du contexte.
 file_put_contentsAjout du support du contexte.
 get_classLe nom de la classe est retourné dans sa notation originale.
 get_classLe paramètre object est optionnel si la fonction est appelée depuis une méthode de l'objet.
 get_class_methodsDepuis PHP 5, cette fonction retourne le nom des méthodes telles quelles sont déclarées (sensible à la casse). En PHP 4, elles étaient en minuscules.
 get_defined_constantsLe paramètre categorize a été ajouté.
 get_defined_varsLa variable $GLOBALS est incluse dans le tableau retourné.
 get_parent_classLe paramètre object est optionnel si cette fonction est appelée depuis une méthode d'un objet.
 html_entity_decodeLe support des encodages multi-octets a été ajouté.
 ip2longAvant cette version, ip2long retournait -1 en cas d'échec.
 is_aCette fonction devient obsolète en faveur de l'opérateur instanceof. L'appel à cette fonction émettra une alerte de niveau E_STRICT.
 is_executableis_executable devient disponible sous Windows
 jdtojewishLes paramètres hebrew et fl ont été ajoutés. Le paramètre fl a été ajouté.
 mb_encode_mimeheaderLe paramètre indent a été ajouté.
 mb_send_mailLes en-têtes Content-Type et Content-Transfer-Encoding peuvent être redéfinis depuis PHP 5.0.0. Avant, les valeurs définies par la fonction mb_language sont toujours utilisées.
 md5Ajout du paramètre raw_output.
 md5_fileAjout du paramètre raw_output
 microtimeLe paramètre get_as_float a été ajouté.
 mkdirDepuis PHP 5.0.0, la fonction mkdir peut aussi être utilisée avec certains gestionnaires d'URL. Reportez-vous à , pour une liste des gestionnaires qui supportent mkdir.
 mkdirLe paramètre recursive a été ajouté
 mysql_fetch_objectAjout de la possibilité de retourner un objet différent.
 opendirpath supporte l'enveloppe URL ftp://
 openssl_pkcs7_encryptAjout du paramètre cipherid.
 openssl_signAjout du paramètre signature_alg.
 parse_ini_fileLes valeurs entourées par des guillemets, peuvent contenir des nouvelles lignes.
 pg_fetch_objectclass_name et params ont été ajoutés. L'ancien format du paramètre result_type existe toujours pour des raisons de compatibilité avec les versions antérieures.
 rangeLe paramètre optionnel step a été ajouté.
 realpathAvant cette version, une valeur vide ou NULL pour le paramètre path faisait que la fonction realpath retournait le nom du dossier du script.
 renamerename peut aussi être utilisée avec certains gestionnaires d'URL. Reportez vous à pour une liste des gestionnaires qui supportent rename.
 rmdirDepuis PHP 5.0.0, rmdir peut aussi être utilisée avec certains gestionnaires d'URL. Reportez vous à pour une liste des gestionnaires qui supportent rmdir.
 session_idLes virgules , et tirets - sont autorisés dans le gestionnaire de session par fichiers.
 set_error_handlerLe paramètre error_types a été introduit.
 sha1Ajout du paramètre raw_output.
 sha1_fileAjout du paramètre raw_output
 socket_createLa constante AF_INET6 a été introduite.
 str_ireplaceAjout du paramètre count.
 str_replaceAjout du paramètre count.
 stream_get_meta_dataLes élément suivants ont été ajoutés dans le tableau retourné : mode, seekable, et uri.
 strip_tagsstrip_tags fonctionne désormais avec les données binaires
 strrposLe paramètre offset a été introduit.
 strrposLe paramètre needle peut maintenant être une chaîne de caractères composée de plus d'un caractère.
 strtotimeLes microsecondes sont acceptées mais ignorées.
 uniqidLe paramètre prefix est devenu optionnel.
 unlinkDepuis PHP 5.0.0, unlink peut aussi être utilisée avec quelques protocoles d'URL. Voyez pour une liste des protocoles supportant unlink.
 usleepCette fonction fonctionne désormais sur les systèmes Windows.
 mysqli_result::fetch_objectAjoute la possibilité de retourner le résultat dans un objet différent.

Annexes
PHP Manual