Maison > développement back-end > tutoriel php > Quelle est la meilleure alternative au « create_function() » obsolète de PHP dans PHP 7.2 et au-delà ?

Quelle est la meilleure alternative au « create_function() » obsolète de PHP dans PHP 7.2 et au-delà ?

DDD
Libérer: 2024-12-31 05:34:13
original
966 Les gens l'ont consulté

What's the Best Alternative to PHP's Deprecated `create_function()` in PHP 7.2 and Beyond?

Fonction create_function() obsolète dans PHP 7.2 : une alternative moderne

PHP 7.2 a rendu obsolète la fonction create_function(), laissant les développeurs chercher une alternative compatible. Cet article aborde ce problème en fournissant une solution qui répond aux exigences de PHP 7.2 tout en conservant les fonctionnalités.

Le défi

Considérez l'extrait de code suivant, qui utilise la fonction create_function() :

$callbacks[$delimiter] = create_function(
  '$matches',
   "return '$delimiter' . strtolower($matches[1]);"
);
Copier après la connexion

Cependant, avec la dépréciation de create_function() dans PHP 7.2, cette approche nécessite un mise à jour.

La solution

La solution réside dans les fonctions anonymes, également appelées fermetures. Les fermetures permettent l'utilisation de variables de portée parent dans le corps de la fonction, fournissant ainsi un moyen d'accéder à la variable $delimiter :

$callbacks[$delimiter] = function($matches) use ($delimiter) {
    return $delimiter . strtolower($matches[1]);
};
Copier après la connexion

Cette fermeture remplace efficacement l'appel create_function() tout en conservant la fonctionnalité souhaitée. Il vous permet de continuer à travailler de manière transparente avec PHP 7.2 et au-delà.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal