Fonctionnalités devenues obsolètes en PHP 7.2.x
Des chaînes non délimitées
Des chaînes qui sont des constantes globales inexistantes sont considérés
comme des chaînes d’eux-mêmes. Ce comportement émet une
E_NOTICE
, mais maintenant émet une
E_WARNING
. Dans la prochaine version majeure
de PHP, une exception sera levée à la place.
<?php
var_dump(NONEXISTENT);
/* Output:
Warning: Use of undefined constant NONEXISTENT - assumed 'NONEXISTENT' (this will throw an Error in a future version of PHP) in %s on line %d
string(11) "NONEXISTENT"
*/
png2wbmp() et jpeg2wbmp()
Les fonctions png2wbmp() et jpeg2wbmp() de l'extension GD ont maintenant été désaprouvées et seront supprimées dans la prochaine version majeur de PHP.
Variante INTL_IDNA_VARIANT_2003
L'extension Intl a désaprouvé la varainte
INTL_IDNA_VARIANT_2003
,
qui est actuellement utilisée par idn_to_ascii() et
idn_to_utf8(). La valeur par défaut sera changéer dans
PHP 7.4 par INTL_IDNA_VARIANT_UTS46
, et la valeur
INTL_IDNA_VARIANT_2003
sera supprimée dans la
prochaine version majeur de PHP.
Méthode __autoload()
La méthode __autoload() a été déconseillée car inférieur à spl_autoload_register() (car elle n'est pas capable d'accepter plusieurs chargeurs automatiques), et les deux styles de chargement automatique ne sont pas interopérable.
Directive de configuration track_errors
et la variable $php_errormsg
Lorsque la directive de configuration track_errors
est activé, une variable $php_errormsg est créée
dans la portée locale lorsqu'une erreur non fatale se produit.
Étant donné que le meilleur moyen de récupérer ces informations d’erreur
est d'utiliser error_get_last(), cette fonctionnalité
a été désapprouvée.
Fonction create_function()
Étant donné les problèmes de sécurité de cette fonction (qui est un wrapper mince autour de eval()) cette ancienne fonction est maintenant obsolète. Le meilleur moyen de créer des fermetures est en définissant des fonctions anonymes.
Directive de configuration mbstring.func_overload
Étant donné les problèmes d’interopérabilité des fonctions basés sur une chaîne utilisées dans les environnements lorsque ce paramètre est activé, il est maintenant obsolète.
(unset) cast
Casting de n’importe quelle expression à ce type entraînera toujours un
résultat NULL
, et ce type de cast superflu est maintenant obsolète.
parse_str() sans second argument
Sans second argument à la fonction parse_str(), les paramètres de la requête sont allouées dans des variables locales. Étant donné les implications de ce fonctionnement sur la sécurité, l'utilisation de parse_str() sans un second argument est maintenant obsolète. La fonction doit toujours être utilisée avec deux arguments, car le deuxième argument entraîne l'analyse de la chaîne de requête dans un tableau.
Fonction gmp_random()
Cette fonction génère un nombre aléatoire basé sur une plage qui est calculée par une taille non exposés, spécifique à la plateforme membre. Pour cette raison, la fonction est maintenant obsolète. Le meilleur moyen de générer un nombre aléatoire est l'utilisation de l’extension GMP avec les fonction gmp_random_bits() et gmp_random_range().
Fonction each()
Cette fonction est beaucoup plus lente à l’itération qu’un normal foreach et entraîne des problèmes de mise en œuvre de certains changements de langue. Elle a donc été désapprouvée.
assert() avec un argument texte
Lors de l'utilisation d'assert() avec un argument texte, il est nécessaire que le texte soit évalué par la fonction eval(). Compte tenu du potentiel pour l’exécution de code à distance, avec un argument de chaîne à l’aide de assert() a maintenant été désapprouvée en faveur de l’utilisation des expressions booléennes.
$errcontext argument de gestionnaires d’erreurs
L’argument $errcontext contient toutes les variables locales de l’emplacement de l’erreur. Compte tenu de son utilisation rare et les problèmes qu'elle provoque avec des optimisations internes, il est maintenant devenu obsolète. Au lieu de cela, un débogueur doit être utilisé pour récupérer des informations sur les variables locales à l’emplacement de l’erreur.
Fonction read_exif_data()
L'alias read_exif_data() a été déconseillé. La fonction exif_read_data() peut être utilisée à la place.
Version en cache
22/12/2024 00:04:57 Cette version de la page est en cache (à la date du 22/12/2024 00:04:57) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-migration72.deprecated.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.