警告:register_shutdown_function():无效的关闭回调
trait ErrorTrait {
public function shutDownFunction() {
$error = error_get_last();
// fatal error, E_ERROR === 1
if ($error['type'] === E_ERROR) {
//do your stuff
$messageStore="Using $this when not in object context";
if (strstr ( $error['message'],$messageStore))
{
echo "found it";
}
}
}
public function shutdown_function()
{
register_shutdown_function('shutDownFunction');
}
}
我在我的主类中使用这个特性并从中调用函数
use ErrorTrait;
public function test()
{ self::shutDownFunction();
self::shutdown_function(); }
然后在这一点上,我在一个名为“run”的函数中调用test中的函数
我所做的只是简单地调用函数.
public function run()
{
self::test ();
// Rest of code}
关于为什么会导致问题的任何想法?
解决方法:
您正在将字符串而不是可调用字符传递给register_shutdown_function.电话应该是这样的
register_shutdown_function([$this, 'shutDownFunction']);