【发布时间】:2013-02-23 14:26:42
【问题描述】:
我需要递归调用一个变量函数,我该怎么做?
$rec = function($li) use($html,$rec) { // error, rec was not defined yet
if( ... ) $rec( ... );
}
我该怎么做?
【问题讨论】:
-
你能发布你的整个函数吗?因为
use用于使用命名空间,而您在function之后使用。
我需要递归调用一个变量函数,我该怎么做?
$rec = function($li) use($html,$rec) { // error, rec was not defined yet
if( ... ) $rec( ... );
}
我该怎么做?
【问题讨论】:
use 用于使用命名空间,而您在function 之后使用。
通过引用 (&$rec) 使用函数变量 $rec,以便您可以将其设置为函数。这也将定义它。
use($html, &$rec)
^
您可以在question Anonymous recursive PHP functions 中找到该原则。
【讨论】: