在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>對現有函數的字串引用:
<code class="php">$functions = [ 'function1' => create_function('$echo', 'echo $echo;') ];</code>已棄用的create_function 方法(PHP
<code class="php">$functions['function1']('Hello world!'); call_user_func($functions['function1'], 'Hello world!');</code>
一旦儲存在一個數組,可以直接呼叫函數,也可以透過call_user_func 呼叫:
最佳替代方案:建議的替代方案方案是使用匿名函數,因為它提供了簡潔的方法以及在陣列中儲存函數的標準化方法,特別是在PHP 5.3 及更高版本中。以上是函數可以儲存在 PHP 數組中嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!