Maison  >  Article  >  développement back-end  >  A quoi peuvent servir les fonctions anonymes PHP ?

A quoi peuvent servir les fonctions anonymes PHP ?

青灯夜游
青灯夜游original
2019-06-06 17:26:093673parcourir

A quoi peuvent servir les fonctions anonymes PHP ?

Les fonctions anonymes, également appelées fermetures, permettent la création temporaire d'une fonction sans nom spécifié.

Avantages des fonctions anonymes

1. Les fonctions non anonymes créent des objets de fonction et des objets de portée lorsqu'elles sont définies si elles ne sont pas appelées à temps ultérieurement, elles le sont également. prennent de la place

2. Les fonctions anonymes ne créeront des objets de fonction et des objets de portée que lorsqu'elles seront appelées. Relâchez immédiatement après l'appel pour économiser de la mémoire.

Utilisation de fonctions anonymes en php

1. Utiliser comme fonction de rappel

<?php
echo preg_replace_callback(&#39;~-([a-z])~&#39;, function ($match) {
    return strtoupper($match[1]);
}, &#39;hello-world&#39;);
// 输出 helloWorld

2 Attribuer une valeur de variable

<?php
$greet = function($name)
{
    printf("Hello %s\r\n", $name);
};
$greet(&#39;World&#39;);
$greet(&#39;PHP&#39;);

Sortie. :

A quoi peuvent servir les fonctions anonymes PHP ?

3. Hériter de la variable de la portée parent

<?php
$message = &#39;hello&#39;;
// 没有 "use"
$example = function () {
    var_dump($message);
};
echo $example();
// 继承 $message
$example = function () use ($message) {
    var_dump($message);
};
echo $example();

Sortie :

A quoi peuvent servir les fonctions anonymes PHP ?

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!

Déclaration:
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
Article précédent:Dans quel langage est php ?Article suivant:Dans quel langage est php ?