在 PHP 数组中存储函数
在 PHP 数组中存储函数可以实现更大的灵活性和动态代码执行。但是,问题中提供的语法已经过时,不推荐。
匿名函数
最优选的方法是使用匿名函数:
<code class="php">$functions = [ 'function1' => function ($echo) { echo $echo; } ];</code>
声明的函数名称
如果函数已经声明,您可以简单地将其名称用作字符串:
<code class="php">function do_echo($echo) { echo $echo; } $functions = [ 'function1' => 'do_echo' ];</code>
Pre- PHP 5.3
如果使用 5.3 之前的 PHP 版本,您可以使用 create_function():
<code class="php">$functions = array( 'function1' => create_function('$echo', 'echo $echo;') );</code>
用法
无论所选方法的函数可以直接调用,也可以使用 call_user_func() 或 call_user_func_array() 调用:
<code class="php">$functions['function1']('Hello world!'); call_user_func($functions['function1'], 'Hello world!');</code>
注意: 对于低于 5.3 的 PHP 版本,请考虑升级到更高版本改进功能和安全性的版本。
以上是如何在 PHP 数组中存储函数?的详细内容。更多信息请关注PHP中文网其他相关文章!