Cet article présente principalement des informations pertinentes sur les fonctions anonymes de PHP et les précautions. Les fonctions anonymes ont été introduites dans PHP5.3. PHP5.3 a non seulement introduit des fonctions anonymes, mais a également apporté de nouvelles fonctionnalités plus nombreuses et améliorées. des fonctions et précautions anonymes PHP. Les amis qui en ont besoin peuvent se référer à
Fonctions et précautions anonymes PHP
PHP5.2 Précédent : chargement automatique, PDO et MySQLi, contraintes de type.
PHP5.2 : prise en charge de JSON
PHP5.3 : fonctionnalités obsolètes, fonctions anonymes, nouvelles méthodes magiques, espaces de noms, liaison statique tardive, Heredoc et Nowdoc, const, opérateur ternaire, Phar
PHP5.4 : court Open Tag, abréviation du tableau, traits, serveur Web intégré, détails modifiés
PHP5.5 : rendement, list() pour foreach, détails modifiés
PHP5.6 : amélioration constante, paramètres de fonction variables, amélioration de l'espace de noms
De nos jours, pratiquement tout le monde utilise PHP5.3 et les versions ultérieures, mais je pense qu'un phénomène courant est que de nombreuses nouvelles fonctionnalités, après si longtemps, ne sont toujours pas complètement populaires et sont rarement utilisées dans les projets.
Regardez les fonctions anonymes PHP :
'test' => function(){ return 'test' },
La définition des fonctions anonymes PHP est très simple, il s'agit d'attribuer une valeur à une variable, mais ceci La valeur est une fonction.
Ce qui précède utilise le framework Yii pour configurer le fichier de composants et ajouter une configuration de test.
Que sont les fonctions anonymes PHP ?
Voir l'explication officielle :
Les fonctions anonymes, également appelées fermetures, permettent la création temporaire d'une fonction sans nom spécifié. La valeur la plus couramment utilisée comme argument de fonction de rappel. Bien entendu, il existe également d’autres applications.
Exemple de fonction anonyme
<?php echo preg_replace_callback('~-([a-z])~', function ($match) { return strtoupper($match[1]); }, 'hello-world'); // 输出 helloWorld ?>
Les fonctions de fermeture peuvent également être utilisées comme valeur de variables. PHP convertira automatiquement cette expression en une instance d'objet de la classe intégrée Closure. La méthode d'affectation d'un objet de fermeture à une variable est la même que la syntaxe d'affectation de variable ordinaire, et un point-virgule est également ajouté à la fin :
Exemple d'affectation de variable de fonction anonyme
<?php $greet = function($name) { printf("Hello %s\r\n", $name); }; $greet('World'); $greet('PHP'); ?>
Les fermetures peuvent hériter des variables de la portée parent. Toutes ces variables doivent être transmises à l’aide de la construction du langage use.
Hériter des variables du scope parent
<?php $message = 'hello' // 没有 "use" $example = function () { var_dump($message); }; echo $example(); // 继承 $message $example = function () use($message) { var_dump($message); }; echo $example(); // Inherited variable's value is from when the function // is defined, not when called $message = 'world'echo $example(); // Reset message $message = 'hello' // Inherit by-reference $example = function () use(&$message) { var_dump($message); }; echo $example(); // The changed value in the parent scope // is reflected inside the function call $message = 'world'echo $example(); // Closures can also accept regular arguments $example = function ($arg) use($message) { var_dump($arg . ' ' . $message); }; $example("hello"); ?>
Notes sur les fonctions anonymes en php
en php5. PHP ajoutera l'utilisation de fonctions anonymes. Aujourd'hui, une erreur s'est produite lors de l'utilisation de fonctions anonymes. Vous ne pouvez pas les déclarer et les utiliser comme les fonctions PHP. Voir le code pour plus de détails
$callback=function(){ return "aa"; }; echo $callback();
<. 🎜>
Il s'imprime sous la forme aa Regardez l'exemple suivant :echo $callback(); $callback=function(){ return "aa"; };
function callback(){ return "aa"; } echo callback(); //aa echo callback(); //aa function callback(){ return "aa"; }
Comment implémenter la fonction de loterie des candidats à un événement en PHP
PHP implémente des méthodes pour ajouter et soustraire des dates, des mois, des jours, des semaines, des heures, des minutes, des secondes, etc.
PHP implémente l'obtention de zones de texte, de champs de mot de passe et de boutons La valeur de
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!