Liste d'examples
Annexes
PHP Manual

# Historique des modifications

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

Version | Function | Description
--- | --- | ---
5.5.3/5.4.19 | pg_delete | Les injections SQL directes dans table_name et les injections SQL indirectes via les identifiants ont été résolues.
| pg_insert | Les injections SQL directes dans table_name et les injections SQL indirectes via les identifiants ont été résolues.
| pg_select | Les injections SQL directes dans table_name et les injections SQL indirectes via les identifiants ont été résolues.
| pg_update | Les injections SQL directes dans table_name et les injections SQL indirectes via les identifiants ont été résolues.
5.5.2 | DOMDocument::schemaValidate | Ajout du paramètre flags
| DOMDocument::schemaValidateSource | Ajout du paramètre flags
5.5.1 | hex2bin | Une alerte est émise si la chaîne en entrée est une chaîne héxadécimale invalide.
| pg_unescape_bytea | Une alerte est émise si la chaîne d'entrée n'est pas valide.

5.5.0/PECL 3.0.0

IntlDateFormatter::create

Un objet IntlCalendar est autorisé comme paramètre calendar. Des objects de type IntlTimeZone et de type DateTimeZone sont autorisés comme paramètre timezone. Les identifiants de fuseaux horaires invalides (incluant les chaînes vides) ne sont plus autorisés comme paramètre timezone. Si NULL est fourni dans le paramètre timezone, l'identifiant du fuseau horaire fourni par le paramètre date_default_timezone_get sera utilisé au lieu du fuseau horaire par défaut d'ICU.

| IntlDateFormatter::format | Il est maintenant possible de passer un objet IntlCalendar comme valeur du paramètre value.
| IntlDateFormatter::setCalendar | Il devient possible de passer un objet IntlCalendar.
5.5.0 | curl_setopt | Ajoute la ressource cURL comme premier argument à la fonction de rappel CURLOPT_PROGRESSFUNCTION.
| curl_setopt | Introduction de la constante CURLOPT_SHARE.
| empty | empty supporte maintenant les expressions, et plus seulement les variables.
| gd_info | Ajout du support WebP.
| imagerotate | Cette fonction est maintenant affectée par la méthode d'interpolation définie par la fonction imagesetinterpolation.
| iterator_to_array | iterator_to_array supporte désormais les clés de types autres que integer et string lorsque le paramètre use_keys est activé.
| json_encode | Ajout du paramètre depth.
| mysql_connect | Cette fonction va générer une alerte de niveau E_DEPRECATED.
| mysql_db_name | La fonction mysql_list_dbs est obsolète et émet une alerte de niveau E_DEPRECATED.
| mysql_pconnect | Cette fonction génère une alerte de niveau E_DEPRECATED.
| mysql_tablename | La fonction mysql_tablename est obsolète, et émet une alerte de niveau E_DEPRECATED.
| pack | Le code "Z" a été ajouté et dont le comportement est identique à "a" en Perl.
| php_logo_guid | php_logo_guid a été supprimé de PHP.
| phpinfo | Le logo GUIDs a été remplacé par son URI ; aussi, la désactivation de expose_php n'a pas d'effet sur le résultat de la fonction phpinfo(). Les crédits sont également maintenant inclus dans l'affichage au lieu d'être simplement liés.
| preg_replace | Le modificateur /e est obsolète. Utilisez la fonction preg_replace_callback à la place. Voir la documentation sur PREG_REPLACE_EVAL pour plus d'informations quant aux risques de sécurité.
| set_error_handler | error_handler accepte désormais NULL.
| set_exception_handler | Précédemment, si NULL était passé, alors la fonction retournait TRUE. Désormais, elle retourne le gestionnaire précédant, et ce, depuis PHP 5.5.0.
| setcookie | Un attribut Max-Age est maintenant inclus dans l'en-tête Set-Cookie envoyé au client.
| setrawcookie | Un attribut Max-Age est maintenant inclus dans l'en-tête Set-Cookie envoyé au client.

unpack

Des modifications ont été effectuées pour aligner le comportement de cette fonction avec Perl : Le code "a" ne supprime plus les octets NULL finaux. Le code "A" supprime maintenant tous les espaces blancs ASCII finaux (espace, tabulation, nouvelles lignes, retour à la ligne, et octets NULL). Le code "Z" a été ajouté pour les chaînes complétées par des caractères NULL, et supprime les octets NULL finaux.

| zend_logo_guid | zend_logo_guid a été supprimé de PHP.
| mysqli::commit | Ajout des paramètres flags et name.
| mysqli::options | L'option MYSQLI_SERVER_PUBLIC_KEY a été ajoutée.
| mysqli::rollback | Ajout des paramètres flags et name.
| SoapClient::SoapClient | Nouvelle option ssl_method.
5.4.8 | assert | La paramètre description a été ajoutée. La description est également maintenant fournie à la fonction de rappel en mode ASSERT_CALLBACK comme quatrième argument.
5.4.7 | parse_url | Correction de la reconnaissance de l'hôte lorsque le schéma est omis et que un séparateur est présent en début de chaîne.
5.4.1 | hex2bin | Un 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.0/PECL 2.0.0b1 | idn_to_ascii | Ajout du paramètre variant et du paramètre idna_info ; Support de l'UTS #46.
| idn_to_utf8 | Ajout des paramètres variant et idna_info ; Support de l'UTS #46.
5.4.0 | DOMDocument::loadHTML | Ajout du paramètre options.
| DOMDocument::loadHTMLFile | Ajout du paramètre options.
| apache_child_terminate | Cette fonction devient disponible pour FastCGI. Précédemment, elle n'était disponible que lorsque PHP était installé comme module Apache.
| apache_request_headers | Cette fonction devient disponible pour FastCGI. Précédemment, elle n'était disponible que lorsque PHP était installé comme module Apache.
| apache_response_headers | Cette fonction devient disponible pour FastCGI. Précédemment, elle n'était disponible que lorsque PHP était installé comme module Apache.
| array_combine | Les précédentes versions lancées une alerte de niveau E_WARNING et retournées FALSE pour des tableaux vides.
| array_multisort | Les options SORT_NATURAL et SORT_FLAG_CASE ont été ajoutées comme options possibles pour l'argument arg.
| date_default_timezone_get | Le décalage horaire n'est plus deviné depuis les informations disponibles via le système d'exploitation.
| date_default_timezone_get | La variable d'environnement TZ n'est plus utilisée pour deviner le décalage horaire.
| debug_backtrace | Le paramètre optionnel limit a été ajouté.
| debug_print_backtrace | Ajout du paramètre optionnel limit.
| dns_get_record | Ajout du paramètre raw.
| empty | La vérification des positions non-numériques d'une chaîne retourne maintenant TRUE.
| error_reporting | E_STRICT devient une partie de E_ALL.
| filter_input_array | Ajout du paramètre add_empty.
| filter_var_array | Ajout du paramètre add_empty.
| get_html_translation_table | La valeur par défaut du paramètre encoding a changé en UTF-8.
| get_html_translation_table | Les constantes ENT_HTML401, ENT_XML1, ENT_XHTML et ENT_HTML5 ont été ajoutées.
| get_magic_quotes_gpc | Retourne toujours FALSE car la fonctionalité des guillemets magiques a été supprimée de PHP.
| get_magic_quotes_runtime | Retourne toujours FALSE car la fonctionalité des guillemets magiques a été supprimée de PHP.
| getallheaders | Cette fonction devient disponible pour FastCGI. Précédemment, elle n'était disponible que lorsque PHP était installé comme module Apache.
| gzcompress | Ajout du paramètre encoding.
| gzdeflate | Ajout du paramètre encoding.
| gzencode | FORCE_DEFLATE génère maintenant un affichage conforme à la RFC 1950.
| hash | L'algorithme tiger utilise désormais l'ordre des octets big-endian.
| hash_algos | Ajout du support pour joaat, fnv132 et fnv164. Suppression du support pour Salsa10 et Salsa20.
| html_entity_decode | Les constantes ENT_HTML401, ENT_XML1, ENT_XHTML et ENT_HTML5 ont été ajoutées.
| html_entity_decode | L'encodage par défaut a changé de ISO-8859-1 à UTF-8.
| htmlentities | Les constantes ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_XML1, ENT_XHTML et ENT_HTML5 ont été ajoutées.
| htmlentities | La valeur par défaut du paramètre encoding est maintenant UTF-8.
| htmlspecialchars | Les constantes ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_XML1, ENT_XHTML et ENT_HTML5 ont été ajoutées.
| htmlspecialchars | La valeur par défaut du paramètre encoding est passée à UTF-8.
| htmlspecialchars_decode | Les constantes ENT_HTML401, ENT_XML1, ENT_XHTML et ENT_HTML5 ont été ajoutées.
| http_build_query | Le paramètre enc_type a été ajouté.
| imagecolorset | Le paramètre alpha a été ajouté.
| isset | La vérification de positions non-numériques d'une chaîne retourne maintenant FALSE.
| json_decode | Le paramètre options a été ajouté.
| json_encode | Les options JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES et JSON_UNESCAPED_UNICODE ont été ajoutées.
| mb_encode_numericentity | Ajout du paramètre is_hex.
| number_format | Cette fonction supporte maintenant des paramètres dec_point et thousands_sep comportant plusieurs caractères. Seul le premier caractère était utilisé avant.
| ob_start | Une taille de morceau de 1 résulte maintenant en 1 octet envoyé au buffer de sortie.
| openssl_decrypt | Le paramètre raw_output a été changé en options.
| openssl_encrypt | Le paramètre raw_output a été changé en options.
| preg_match_all | Le paramètre matches devient optionnel.
| scandir | La 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_handler | Ajout 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_valueretrieval

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

| sort | Ajout du support des constantes SORT_NATURAL et SORT_FLAG_CASE pour le paramètre sort_flags
| Phar::setStub | Ajout du paramètre len.
| PharData::setStub | Ajout du paramètre len.
| SimpleXMLElement::getDocNamespaces | Ajout du paramètre from_root.
| SoapClient::SoapClient | Ajout de l'option keep_alive.
5.4 | grapheme_substr | Si length est fourni et est positif, et la chaîne fournie est plus petite que la longueur spécifiée, tout le reste de la chaîne, suivant le paramètre start sera retourné. Précédemment, FALSE était retourné.
5.3.9 | is_a | Ajout du paramètre allow_string.
| is_subclass_of | Ajout du paramètre allow_string.
5.3.7 | crypt | Ajout de deux nouveaux modes Blowfish $2x$ et $2y$ pour éviter de potentielles attaques.
| is_subclass_of | Ajout du support pour class_name pour fonctionner avec les interfaces
5.3.6 | DateTime::modify | Les requêtes date/heure absolues prennent maintenant effets. Auparavant, seules les parties relatives étaient utilisées.
| DOMDocument::saveHTML | Le paramètre node a été ajouté.
| array_product | Le produit d'un tableau vide est maintenant 1, alors qu'auparavant, cette fonction retournait 0 pour un tableau vide.
| debug_backtrace | Le paramètre provide_object a été modifié en options et d'autres options DEBUG_BACKTRACE_IGNORE_ARGS ont été ajoutées.
| debug_print_backtrace | Ajout du paramètre optionnel options.
| preg_match | Retourne FALSE si offset est plus grand que la taille de subject.
| preg_match_all | Retourne FALSE si offset est plus grand que la taille de subject.
| PDO_MYSQL DSN | Avant la version 5.3.6, charset était ignoré.
5.3.4 | get_html_translation_table | Le paramètre encoding a été ajouté.
| mt_rand | Emet une alerte de niveau E_WARNING et retourne FALSE si le paramètre max < au paramètre min.
| rawurlencode | Les caractères tildes (~) ne sont plus encodés lorsque la fonction rawurlencode est utilisée avec les chaînes EBCDIC.
| sleep | Avant PHP 5.3.4, sous Windows, sleep retournait toujours NULL, indépendamment du fait que la fonction ait été interrompue ou non.
| IntlDateFormatter::format | Le support des objets DateTime dans le paramètre value a été ajouté.
| mysqli_driver::$report_mode | Modification du mode de reporting : il est maintenant pour chaque requête, plutôt que pour chaque processus.
5.3.3 | DOMXPath::evaluate | Ajout du paramètre registerNodeNS.
| DOMXPath::query | Ajout du paramètre registerNodeNS.
| json_encode | L'option JSON_NUMERIC_CHECK a été ajoutée.
| ldap_sasl_bind | Le support Windows a été ajouté.
| openssl_decrypt | Le paramètre iv a été ajouté.
| openssl_encrypt | Le paramètre iv a été ajouté.
| parse_url | Suppression du E_WARNING émis lorsque l'URL était invalide.
5.3.2 (PECL OCI8 1.4) | oci_set_prefetch | Avant cette version, rows doit être >= 1.
5.3.2 | crypt | Correction 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.
| crypt | Ajout de SHA-256 et de SHA-512 basés sur l'implementation de Ulrich Drepper.
| flock | Le 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_init | Le paramètre base a été étendu de "2 à 36", à "2 à 62" et "-2 à -36".
| gmp_strval | Le paramètre base a été étendu de "2 à 36", à "2 à 62" et "-2 à -36".
| imap_append | Ajout du support INTERNALDATE à imap_append.
| imap_open | Le paramètre params a été ajouté.
5.3.1 | get_defined_constants | Windows uniquement : Les constantes internes sont catégorisées sous Core, précédemment, elles l'étaient sous mhash.
| ibase_query | En 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).
| rename | rename peut maintenant renommer des fichiers entre différents lecteurs Windows.
5.3.0 | DateTime::__construct | Si le paramètre time contient un format date/heure invalide, alors une exception sera lancée. Précédemment, une erreur était émise.
| DateTime::modify | Changement de valeur de retour de NULL à DateTime en cas de succès.
| DateTime::setDate | Changement de valeur de retour de NULL à DateTime en cas de succès.
| DateTime::setISODate | Changement de valeur de retour de NULL à DateTime en cas de succès.
| DateTime::setTime | Changement de valeur de retour de NULL à DateTime en cas de succès.
| DateTime::setTimezone | Changement de valeur de retour de NULL à DateTime en cas de succès.
| DateTimeZone::getTransitions | Les paramètres optionnels timestamp_begin et timestamp_end ont été ajouté.
| DateTimeZone::listIdentifiers | Ajout des paramètres optionnels what et country.
| DirectoryIterator::__construct | Émet une exception UnexpectedValueException si le paramètre path ne peut être ouvert.
| acosh | Cette fonction est maintenant disponible sur toutes les plate-formes
| array_multisort | L'option SORT_LOCALE_STRING a été ajoutée comme option possible pour l'argument arg.
| array_reduce | Modification du paramètre initial afin d'autoriser des variables de types mixtes (mixed) ; auparavant, uniquement des entiers.
| array_search | Comme 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.
| asinh | Cette fonction est maintenant disponible sur toutes les plate-formes
| atanh | Cette fonction est maintenant disponible sur toutes les plate-formes
| call_user_func | L'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_array | L'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.
| checkdnsrr | Cette fonction est maintenant disponible sous Windows.
| clearstatcache | Ajout des paramètres optionnels clear_realpath_cache et filename.
| copy | Ajout du support du contexte.
| crypt | PHP 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.
| curl_setopt | Introduction de la constante CURLOPT_PROGRESSFUNCTION.
| date_default_timezone_set | Émet maintenant une alerte de niveau E_WARNING plutôt qu'une alerte de niveau E_STRICT.
| define_syslog_variables | Cette fonction lance maintenant des alertes de type E_DEPRECATED.
| dl | dl 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_record | Cette fonction est maintenant disponible sous Windows.
| dns_get_record | Avant cette version, si le paramètre authns est passé, le paramètre addtl était également nécessaire.
| error_reporting | E_DEPRECATED et E_USER_DEPRECATED ont été introduits.
| exif_imagetype | Ajout du support icon.
| expm1 | Cette fonction est maintenant disponible sur toutes les plate-formes
| fgetcsv | Le paramètre escape a été ajouté.
| fnmatch | Cette fonction est maintenant disponible sous Windows.
| func_get_arg | Si 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_arg | Cette fonction peut maintenant être utilisée dans des listes de paramètres.
| func_get_args | Si 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_args | Cette fonction peut maintenant être utilisée dans des listes de paramètres.
| func_num_args | Cette fonction peut maintenant être utilisée dans des listes de paramètres.
| func_num_args | Si 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.
| gd_info | L'attribut JPG Support est renommé en JPEG Support.
| get_cfg_var | get_cfg_var a été modifié afin de permettre de retourner un tableau de directives.
| get_class | NULL 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_constants | Les 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_vars | Cette fonction retourne maintenant NULL si le paramètre object n'est pas un objet. Précédemment, FALSE était retourné.
| getimagesize | Ajout du support des icônes.
| getmxrr | Cette fonction est maintenant disponible sous Windows.
| getopt | Le paramètre longopts est disponible sur tous les systèmes.
| getopt | Ajout du support des valeurs optionnelles (spécifié par "::").
| getopt | Cette fonction n'est plus dépendante du système et fonctionne maintenant également sous Windows.
| getopt | Ajout du support de "=" comme séparateur argument/valeur.
| hash_algos | Ajout du support pour md2, ripemd256, ripemd320, salsa10, salsa20, snefru256 et sha224
| htmlentities | La constante ENT_IGNORE a été ajoutée.
| htmlspecialchars | La constante ENT_IGNORE a été joutée.
| imagecolorclosesthwb | Cette fonction est désormais disponible sous Windows
| imagefilter | Support de la pixelisation (IMG_FILTER_PIXELATE) ajouté.
| inet_ntop | Cette fonction est maintenant disponible sur les plate-formes Windows.
| inet_pton | Cette fonction est maintenant disponible sur les plate-formes Windows.
| ini_get | Précédemment, une chaîne vide était retournée si l'option de configuration n'existait pas. Maintenant, FALSE sera retourné dans ce cas.
| ini_get_all | Ajout du paramètre details.
| is_a | Cette fonction n'est plus obsolète, et ne lancera donc plus d'alerte de type E_STRICT.
| json_decode | Ajout du paramètre optionnel depth. La profondeur de récursion par défaut a augmenté de 128 à 512
| json_encode | Le paramètre options a été ajouté.
| link | Cette fonction est maintenant disponible sous Windows (Vista, Server 2008 ou plus récent).
| linkinfo | Cette fonction est maintenant disponible sous Windows (Vista, Server 2008 ou plus récent).
| log1p | Cette fonction est maintenant disponible sur toutes les plate-formes
| mb_get_info | L'élément "http_output_conv_mimetypes" a été ajouté.
| mcrypt_create_iv | MCRYPT_DEV_RANDOM et MCRYPT_DEV_URANDOM deviennent disponibles sous Windows.
| mcrypt_create_iv | Il n'est plus nécessaire d'appeler srand dans un premier temps. Cet appel est maintenant fait automatiquement.
| mktime | mktime lance maintenant une alerte de type E_DEPRECATED si le paramètre is_dst est utilisé.
| mysql_db_query | Cette fonction lance maintenant une alerte de type E_DEPRECATED.
| mysql_escape_string | Cette fonction lance maintenant une alerte de type E_DEPRECATED.
| nl2br | Ajout du paramètre optionnel is_xhtml.
| parse_ini_file | Ajout 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_create | Le paramètre optionnel object_id a été ajouté.
| pg_lo_import | Le paramètre optionnel object_id a été ajouté.
| preg_quote | Le caractère - est maintenant protégé.
| property_exists | Cette fonction vérifie l'existence d'une propriété indépendamment de l'accessibilité.
| rawurlencode | Conformité avec la RFC 3986.
| readlink | Cette fonction est maintenant disponible sous Windows (Vista, Server 2008 ou plus récent).
| realpath | Avant cette version, si le dernier composant path n'existe pas, realpath n'échouera pas sous les systèmes *BSD dans ce cas.
| register_tick_function | Les ticks sont maintenant supportés sur les serveurs Web threadés.
| round | Le paramètre mode a été ajouté.
| session_start | Si une session n'arrive pas à démarrer, alors FALSE est retourné. Précédemment TRUE était retourné.
| setlocale | Cette 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_attach | La fonction retourne une ressource à la place d'un entier.
| socket_create_pair | Cette fonction a été ré-activée sous Windows.
| spl_autoload_register | Ajout du support des espaces de noms.
| spl_autoload_register | Le paramètre prepend a été ajouté.
| stream_context_create | Ajout de l'argument optionnel params.
| stream_socket_pair | Cette fonction est maintenant disponible sous Windows.
| stristr | Ajout du paramètre optionnel before_needle.
| strlen | Les 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.
| strstr | Ajout du paramètre optionnel before_needle.
| strtotime | Avant PHP 5.3.0, 24:00 n'était pas un format valide et la fonction strtotime retournait FALSE.
| strtotime | Avant PHP 5.3.0, les formats de temps relatifs fournis à l'argument time de la fonction strtotime comme this week, previous week, last week, et next week étaient interprétés comme étant une période relative de 7 jours sur la date/heure courante, plutôt qu'une période d'une semaine allant du Monday au Sunday.
| sybase_connect | Le paramètre new a été ajouté.
| symlink | Cette fonction est maintenant disponible sous Windows (Vista, Server 2008 ou plus récent).
| time_nanosleep | Cette fonction est maintenant disponible sous Windows.
| time_sleep_until | Cette fonction est maintenant disponible sous Windows.
| touch | Il devient possible de changer la date et heure de modification d'un dossier sous Windows.
| mysqli::__construct | Ajout des connexions persistantes.
| mysqli::query | Ajout des requêtes asynchrones.
| ReflectionFunction::__construct | name autorise maintenant les fermetures.
| SplObjectStorage::attach | Ajout du paramètre data.
5.3 (PECL OCI8 1.3.4) | oci_set_prefetch | Avant 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 | mysqli_driver::$report_mode | Modification du mode de reporting : il est maintenant pour chaque requête, plutôt que pour chaque processus.
5.2.11 | get_defined_constants | Le 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.10 | array_rand | Les clés du tableau résultant ne sont plus mélangées.
| array_unique | Changement de la valeur par défaut de sort_flags à nouveau vers SORT_STRING.
| curl_setopt | Ajout de CURLOPT_PROTOCOLS et CURLOPT_REDIR_PROTOCOLS.
| ip2long | Avant cette version, ip2long retourne parfois un nombre valide même si la valeur passée n'est pas une adresse pointée (IPv4).
| natsort | Les chaines numériques alignées par des zéros (e.g., '00005') ignorent les zéros d'alignement.
5.2.9 | array_unique | Ajout 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.8 | XSLTProcessor::importStylesheet | Accepte de nouveau SimpleXMLElement depuis PHP 5.2.6 alors qu'il était cassé auparavant.
5.2.7 | error_log | La valeur possible pour 4 a été ajoutée à message_type.
| parse_ini_file | En cas d'erreur de syntaxe, la fonction retourne maintenant FALSE au lieu d'un tableau vide.
| round | Le fonctionnement interne de round a été modifié afin d'être conforme au standard C99.
| strtotime | En PHP 5, avant la version 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.6 | fopen | Les options 'c' et 'c+' ont été ajoutées.
5.2.5 | addcslashes | Les séquences \v et \f ont été ajoutées.
| debug_backtrace | Ajout du paramètre optionnel provide_object.
| imagefilter | Le support du canal Alpha pour la constante IMG_FILTER_COLORIZE a été ajouté.
5.2.4 | checkdnsrr | Le type TXT a été ajouté.
| get_loaded_extensions | Le paramètre optionnel zend_extensions a été ajouté
| ldap_first_attribute | Le paramètre ber_identifier a été supprimé. Il est maintenant géré automatiquement par PHP.
| ldap_next_attribute | Le paramètre ber_identifier a été supprimé. Il est maintenant géré automatiquement par PHP.
| parse_ini_file | Les 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_register | Ajout du paramètre flags.
5.2.3 | getimagesize | Les erreurs de lecture générées par cette fonction passent de niveau E_WARNING à E_NOTICE.
| htmlentities | Ajout du paramètre double_encode.
| htmlspecialchars | Ajout du paramètre double_encode.
| json_decode | La limite a été élevée de 20 à 128
| XMLWriter::writeElement | Le paramètre content est devenu optionnel.
| XMLWriter::writeElementNS | Le paramètre content est devenu optionnel.
| PDOStatement::getColumnMeta | champs table
5.2.2 - 5.2.6 | substr | Si start est hors de la chaine, false est retourné. Les autres versions récupèrent la chaîne depuis le début.
5.2.2 | DOMDocument::registerNodeClass | Avant 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_connect | Cette fonction retourne FALSE lorsqu'elle ne peut pas utiliser une connexion SSL, au lieu d'utiliser à la place une connexion non-SSL.
| phpinfo | L'information "Loaded Configuration File" a été ajoutée, alors qu'avant, seule l'information "Configuration File (php.ini) Path" existait.
| preg_match | Les 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_all | Les 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_terminate | Les versions précédentes détruisent la ressource resource fournie.
| token_get_all | Les numéros de lignes sont retournés dans l'élément 2
5.2.1 | iterator_to_array | Ajout du paramètre use_keys.
| json_decode | Ajout du support du décodage JSON des types basiques.
| memory_get_peak_usage | La compilation avec l'option de configuration --enable-memory-limit n'est plus nécessaire pour que cette fonction existe.
| memory_get_usage | La compilation avec l'option de configuration --enable-memory-limit n'est plus nécessaire pour que cette fonction existe.
| mt_srand | L'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_open | Ajout de l'option bypass_shell au paramètre other_options.
5.2.0 | base64_decode | Le paramètre strict a été ajouté
| curl_multi_info_read | Le paramètre msgs_in_queue a été ajouté.
| error_reporting | E_RECOVERABLE_ERROR est introduit.
| imagettftext | Il est maintenant possible de spécifier une entitée hexadécimal dans text.
| imap_open | Le paramètre n_retries a été ajouté.
| imap_reopen | Le paramètre n_retries a été ajouté
| mb_strrpos | Ajout du paramètre optionnel offset.
| memory_get_peak_usage | Le paramètre real_usage a été ajouté.
| memory_get_usage | Le paramètre real_usage a été ajouté.
| openssl_verify | Ajout du paramètre signature_alg.
| pathinfo | La constante PATHINFO_FILENAME a été ajoutée.
| pg_escape_bytea | Le paramètre connection a été ajouté.
| pg_escape_string | Le paramètre connection a été ajouté.
| session_get_cookie_params | L'entrée "httponly" a été ajouté dans le tableau retourné.
| session_set_cookie_params | Ajout du paramètre httponly.
| set_error_handler | Le gestionnaire d'erreurs doit retourner FALSE pour peupler la variable $php_errormsg.
| setcookie | Le paramètre httponly a été ajouté.
| setrawcookie | Ajout du paramètre httponly.
| snmp_set_oid_numeric_print | Depuis PHP 5.2.0.
| PDOStatement::execute | Les 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::children | Le paramètre optionnel is_prefix a été ajouté.
| SimpleXMLElement::__construct | Ajout des paramètres ns et is_prefix.
| SoapServer::SoapServer | Ajout de l'option typemap.
| XMLReader::open | Les paramètres encoding et options ont été ajoutés.
| XMLReader::XML | Les paramètres encoding et options ont été ajoutés.
5.1.3 | DirectoryIterator::__construct | Émet une exception RuntimeException si le paramètre path est une chaîne vide.
| curl_getinfo | Ajout de CURLINFO_HEADER_OUT.
| get_headers | Cette fonction utilise le contexte de flux de défaut, qui peut être fixé/changé avec la fonction stream_context_set_default.
| http_build_query | Les crochets sont échappés.
| imagecolorallocate | Retourne FALSE si l'allocation échoue. Précédemment, -1 était retourné.
| imagecolorallocatealpha | Retourne FALSE si l'allocation échoue. Précédemment, -1 était retourné.
| imagepng | Ajout du paramètre filters.
| mb_get_info | Les types d'élément "mail_charset", "mail_header_encoding", et "mail_body_encoding" sont maintenant disponibles.
| SoapClient::__doRequest | Le paramètre one_way a été ajouté.
| XMLReader::getAttribute | Retourne NULL si aucun attribut n'est trouvé. Précédemment, la fonction retournait une chaîne vide dans ce cas.
5.1.2 | date_default_timezone_set | La fonction commence à valider le paramètre timezone_identifier.
| http_build_query | Le paramètre arg_separator a été ajouté.
| imagepng | Ajout du paramètre quality.
| parse_url | Ajout du paramètre component
| SimpleXMLElement::__construct | Ajout des paramètres options et data_is_url.
5.1.1 | date | Il y a plusieurs constantes utiles de formats date/heure standards qui peuvent être utilisées pour spécifier le paramètre format.
| debug_backtrace | Ajout de l'objet courant comme élément de retour possible.
| gmdate | Il y a quelques constants utiles pour les formats standards date/heure qui peuvent être utilisées dans le paramètre format.
5.1.0 | DirectoryIterator::__construct | Émet une exception RuntimeException en cas d'erreur. Précédemment, une exception Exception était lancée.
| DOMDocument::save | Ajout du paramètre options
| DOMDocument::saveXML | Ajout du paramètre options
| class_implements | Ajout de l'option pour passer le paramètre class en tant que chaîne de caractères. Ajout du paramètre autoload.
| class_parents | Ajout de l'option pour passer le paramètre en tant que chaîne de caractères
| ctype_digit | Avant PHP 5.1.0, cette fonction retournait TRUE lorsque le paramètre text était une chaîne vide.
| curl_setopt | Ajout 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.
| date | L'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.
| explode | Le paramètre limit peut désormais être négatif
| file_get_contents | Ajout des paramètres offset et maxlen.
| file_put_contents | Ajout du support de LOCK_EX et la possibilité de passer une ressource de flux dans le paramètre data.
| get_parent_class | Si appelée sans paramètre en dehors de l'objet, cette fonction aurait retourné NULL avec une alerte, mais retourne maintenant FALSE.
| gettimeofday | Le paramètre return_float a été ajouté.
| glob | GLOB_ERR a été ajouté
| gmdate | L'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).
| gmmktime | Depuis PHP 5.1.0, le paramètre is_dst est devenu obsolète. 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.
| imagerotate | Le paramètre ignore_transparent a été ajouté.
| intval | Lance 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_file | La fonction a changé pour utiliser les flux API. Cela signifie que vous pouvez l'utiliser avec des enveloppes, comme md5_file('http://example.com/..')
| mktime | Lorsqu'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.
| mktime | Le 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_verify | Ajout du paramètre content.
| preg_replace | Ajout du paramètre count
| preg_replace_callback | Le paramètre count a été ajouté.
| session_regenerate_id | Ajout du paramètre delete_old_session.
| sha1_file | La fonction a changé pour utiliser les flux API. Cela signifie que vous pouvez l'utiliser avec des enveloppes, comme sha1_file('http://example.com/..')
| str_word_count | Ajout du paramètre charlist
| stream_copy_to_stream | Ajout du paramètre offset
| stream_filter_append | Avant PHP 5.1.0, cette fonction retournait TRUE en cas de succès ou FALSE si une erreur survient.
| stream_filter_prepend | Avant PHP 5.1.0, cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.
| stream_get_contents | Le 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.
| strtotime | La fonction retourne maintenant FALSE en cas d'échec, au lieu de -1.
| substr_compare | Ajout de la possibilité d'utiliser une valeur négative pour le paramètre offset.
| substr_count | Ajout des paramètres offset et length
| var_export | Possibilité d'exporter des classes et des tableaux contenant des classes en utilisant la méthode magique __set_state.
| XSLTProcessor::registerPHPFunctions | Le paramètre restrict a été ajouté.
5.0.5 | php_check_syntax | Cette fonction a été supprimée de PHP.
5.0.3 | get_class_vars | En fonction du contexte, get_class_vars ne retourne que les propriétés qui sont accessibles depuis ce contexte.
| is_subclass_of | vous pouvez également spécifier le paramètre object en tant que chaîne de caractères (le nom de la classe).
| php_check_syntax | Appel à exit après php_check_syntax cause une erreur de segmentation.
5.0.2 | array_slice | Le paramètre optionnel preserve_keys a été ajouté.
| class_exists | Ne retourne plus TRUE pour les interfaces définies. Utilisez la fonction interface_exists.
| get_class_vars | Appeler 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.
| sort | Ajout de la constante SORT_LOCALE_STRING
| strtotime | En PHP 5 jusqu'à la version 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.1 | get_class_vars | Appeler get_class_vars retourne toutes les propriétés, exactement comme lors de la conversion d'un objet en tableau.
| php_check_syntax | error_message est passé par référence.
5.0.0. | proc_open | Ajout des paramètres cwd, env et other_options.
5.0.0 | apache_get_modules | Cette 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_version | Devenue disponible avec l'API "filter" d'Apache 2.
| array_keys | Ajout du paramètre strict.

array_merge

Le 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 )

| checkdnsrr | Le type AAAA a été ajouté.
| class_exists | La paramètre autoload a été ajouté.
| com_release | Cette fonction a été effacée.
| curl_setopt | Ajout de CURLOPT_FTP_USE_EPRT, CURLOPT_NOSIGNAL, CURLOPT_UNRESTRICTED_AUTH, CURLOPT_BUFFERSIZE, CURLOPT_HTTPAUTH, CURLOPT_PROXYPORT, CURLOPT_PROXYTYPE, CURLOPT_SSLCERTTYPE et CURLOPT_HTTP200ALIASES.
| dirname | dirname gère maintenant les données binaires.
| empty | Les objets n'ayant pas de propriété ne sont plus considérés comme vide.
| error_reporting | E_STRICT est introduit (ne fait plus partie de E_ALL).
| extension_loaded | extension_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.
| fgetss | Le paramètre length devient optionnel.
| file | Avant PHP 5.0.0, le paramètreflags ne couvre que l'include_path et est activé s'il vaut 1.
| file | Le paramètre context a été ajouté.
| file_get_contents | Ajout du support du contexte.
| file_put_contents | Ajout du support du contexte.
| get_class | Le nom de la classe est retourné dans sa notation originale.
| get_class | Le paramètre object est optionnel si la fonction est appelée depuis une méthode de l'objet.
| get_class_methods | Depuis 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_constants | Le paramètre categorize a été ajouté.
| get_defined_vars | La variable $GLOBALS est incluse dans le tableau retourné.
| get_parent_class | Le paramètre object est optionnel si cette fonction est appelée depuis une méthode d'un objet.
| html_entity_decode | Le support des encodages multi-octets a été ajouté.
| ip2long | Avant cette version, ip2long retournait -1 en cas d'échec.
| is_a | Cette fonction devient obsolète en faveur de l'opérateur instanceof. L'appel à cette fonction émettra une alerte de niveau E_STRICT.
| is_executable | is_executable devient disponible sous Windows
| jdtojewish | Les paramètres hebrew et fl ont été ajoutés. Le paramètre fl a été ajouté.
| mb_encode_mimeheader | Le paramètre indent a été ajouté.
| mb_send_mail | Les 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.
| md5 | Ajout du paramètre raw_output.
| md5_file | Ajout du paramètre raw_output
| microtime | Le paramètre get_as_float a été ajouté.
| mkdir | Depuis 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.
| mkdir | Le paramètre recursive a été ajouté
| mysql_fetch_object | Ajout de la possibilité de retourner un objet différent.
| opendir | path supporte l'enveloppe URL ftp://
| openssl_pkcs7_encrypt | Ajout du paramètre cipherid.
| openssl_sign | Ajout du paramètre signature_alg.
| parse_ini_file | Les valeurs entourées par des guillemets, peuvent contenir des nouvelles lignes.
| pg_fetch_object | class_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.
| range | Le paramètre optionnel step a été ajouté.
| realpath | Avant cette version, une valeur vide ou NULL pour le paramètre path faisait que la fonction realpath retournait le nom du dossier du script.
| rename | rename peut aussi être utilisée avec certains gestionnaires d'URL. Reportez vous à pour une liste des gestionnaires qui supportent rename.
| rmdir | Depuis 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_id | Les virgules , et tirets - sont autorisés dans le gestionnaire de session par fichiers.
| set_error_handler | Le paramètre error_types a été introduit.
| sha1 | Ajout du paramètre raw_output.
| sha1_file | Ajout du paramètre raw_output
| socket_create | La constante AF_INET6 a été introduite.
| str_ireplace | Ajout du paramètre count.
| str_replace | Ajout du paramètre count.
| stream_get_meta_data | Les élément suivants ont été ajoutés dans le tableau retourné : mode, seekable, et uri.
| strip_tags | strip_tags fonctionne désormais avec les données binaires.
| strrpos | Le paramètre needle peut maintenant être une chaîne de caractères composée de plus d'un caractère.
| strrpos | Le paramètre offset a été introduit.
| strtotime | Les microsecondes sont acceptées mais ignorées.
| uniqid | Le paramètre prefix est devenu optionnel.
| unlink | Depuis PHP 5.0.0, unlink peut aussi être utilisée avec quelques protocoles d'URL. Voyez pour une liste des protocoles supportant unlink.
| usleep | Cette fonction fonctionne désormais sur les systèmes Windows.
| mysqli_result::fetch_object | Ajoute la possibilité de retourner le résultat dans un objet différent.

Liste d'examples
Annexes
PHP Manual