Maison >développement back-end >tutoriel php >Comment stocker des fonctions dans un tableau en PHP ?
Exploration du stockage de fonctions dans des tableaux en PHP
PHP propose plusieurs options pour stocker des fonctions dans des tableaux, chacune avec ses propres implications.
Fonctions anonymes
L'approche privilégiée consiste à utiliser des fonctions anonymes :
<code class="php">$functions = [ 'function1' => function ($echo) { echo $echo; } ];</code>
Les fonctions anonymes vous permettent de définir une fonction sur le- fly, sans la déclarer au préalable.
Référencement des fonctions nommées
Si vous souhaitez stocker une fonction existante, vous pouvez la référencer par son nom sous forme de chaîne :
<code class="php">function do_echo($echo) { echo $echo; } $functions = [ 'function1' => 'do_echo' ];</code>
Cette méthode implique de déclarer la fonction en dehors du tableau.
Approche héritée (PHP < 5.3)
Pour les anciennes versions de PHP qui le font ne prend pas en charge les fonctions anonymes, vous pouvez utiliser create_function :
<code class="php">$functions = array( 'function1' => create_function('$echo', 'echo $echo;') );<p>Cependant, cette approche est obsolète et doit être évitée si possible.</p> <p><strong>Invocation de fonctions stockées</strong></p> <p>Quelle que soit la méthode de stockage utilisée, vous pouvez appeler les fonctions directement (PHP >= 5.4) ou avec call_user_func/call_user_func_array :</p> <pre class="brush:php;toolbar:false"><code class="php">$functions['function1']('Hello world!'); call_user_func($functions['function1'], 'Hello world!');</code>
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!