我有以下代码:
namespace Google\Ads\GoogleAds\Examples\BasicOperations;
set_exception_handler('exception_handler');
function exception_handler($exception) {
echo "Uncaught exception: " , $exception->getMessage(), "\n";
}并获得以下错误(PHP7.3):
警告: set_exception_handler()期望参数(exception_handler)是一个有效的回调
似乎必须使用命名空间来引用异常处理程序函数(如set_error_handler("MyNamespace\my_error_handler");),但我还没有找到一个正确工作的示例。
发布于 2020-09-02 18:24:46
您也必须在那里使用名称空间,这就是它不能工作的原因。
set_exception_handler('Google\Ads\GoogleAds\Examples\BasicOperations\exception_handler');而不是:
set_exception_handler('exception_handler');发布于 2019-09-26 16:49:19
这样做是可行的:
<?php
namespace Google\Ads\GoogleAds\Examples\BasicOperations;
set_exception_handler('Google\Ads\GoogleAds\Examples\BasicOperations\exception_handler');
throw new \Exception('test');
function exception_handler($exception) {
echo "Uncaught exception: " , $exception->getMessage(), "\n";
}发布于 2021-03-02 08:08:11
或者,这也有效。
set_exception_handler(array($this,'exception_handler'));https://stackoverflow.com/questions/58121265
复制相似问题