【发布时间】:2014-03-05 21:30:45
【问题描述】:
我想在我的类中有一个静态闭包变量,以便人们可以更改代码特定部分的行为。但是,我似乎无法在任何地方初始化它。
首先我尝试了这个:
public static $logger = function($sql) { print_r($sql); };
但显然 PHP 无法处理。好的,所以我做了一个静态的init方法:
public static $logger;
static function init() {
/* if (!Base::logger) */
Base::logger = function($sql) { print_r($sql); };
}
并在文件末尾,在类定义之外调用它。但这也给了我一个语法错误:解析错误:语法错误,[文件]中的意外'='在第[行]行。有什么提示吗?
【问题讨论】:
-
你只是忘记了 $ :
Base::$logger = -
是的,就是这样!谢谢!