Maison >développement back-end >tutoriel php >Les fonctions peuvent-elles être stockées dans des tableaux PHP ?

Les fonctions peuvent-elles être stockées dans des tableaux PHP ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-01 06:38:30974parcourir

Can Functions be Stored in PHP Arrays?

Stockage de fonctions dans des tableaux PHP

Question :

Une fonction peut-elle être stockée dans un PHP array?

Réponse :

Oui, il est possible de stocker une fonction dans un tableau PHP. Il existe plusieurs approches pour ce faire :

  • Fonction anonyme :
<code class="php">$functions = [
  'function1' => function ($echo) {
    echo $echo;
  }
];</code>
  • Référence de chaîne à un élément existant Fonction :
<code class="php">function do_echo($echo) {
  echo $echo;
}

$functions = [
  'function1' => 'do_echo'
];</code>
  • Méthode create_function obsolète (PHP < 5.3) :
<code class="php">$functions = [
  'function1' => create_function('$echo', 'echo $echo;')
];<p>Une fois stockée dans un tableau, la fonction peut être appelée directement ou via call_user_func :</p>
<pre class="brush:php;toolbar:false"><code class="php">$functions['function1']('Hello world!');

call_user_func($functions['function1'], 'Hello world!');</code>

Meilleure alternative :

L'alternative recommandée consiste à utiliser des fonctions anonymes, car elle fournit un moyen concis et standardisé de stocker des fonctions dans des tableaux, en particulier dans PHP versions 5.3 et supérieures.

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