0

我得到这个:

PHP 致命错误:调用未定义的方法 Closure::bind()

我得到错误的行是:

public function bind($signal, $callback)
{

    if (!array_key_exists($signal, $this->_registry))
        $this->_registry[$signal] = array();
    $this->_registry[$signal][] = \Closure::bind($callback, null, 'static'); // here

    return $this;
}

如您所见,我使用手册Closure::bind()中显示的。请注意我正在使用(注意斜线),因为我使用命名空间自动加载,并且需要通知自动加载器它应该查看系统命名空间。\Closure::bind()

笔记

仔细查看文档中的每个类,并注意每个细节 :)

4

3 回答 3

5

检查您的 php 版本,显然您不在 >= 5.4.0 上!

于 2013-07-01T16:17:27.500 回答
2

您需要确保您的 PHP 版本支持该方法。
您可以使用命令检查方法是否存在method_exists()。您尝试执行的方法仅适用于 PHP 5.4.0 或更高版本!

有关检查方法存在的更多信息,请参见此处: http: //php.net/manual/en/function.method-exists.php

于 2013-07-01T16:21:27.250 回答
-1

您需要检查您的 PHP 版本。文档指出版本至少应为 5.4.0

链接:- 关闭

于 2013-07-01T16:16:33.647 回答