PHP: set_error_handler 和 visibily

标签 php error-handling visibility

在我的类构造函数中,我有以下内容:

set_error_handler(array(
    $this,
    '_custom_error_handler'
));

在同一个类中,我定义了以下方法:

protected function _custom_error_handler($error_number, $error_string, $error_file, $error_line)

当我的代码中出现错误时,我会收到以下警告:

Warning: Invalid callback ... _custom_error_handler, cannot access protected method

为什么这个类(或其子类?)不能访问这个 protected 方法? protected 方法不应该是可访问的吗???

最佳答案

protected 方法只能从类或子类内部访问。

在这种情况下,set_error_handler 正在调用一个方法,而 set_error_handler 在您的类之外。因此它必须是公开的。

关于PHP: set_error_handler 和 visibily,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44656352/

相关文章:

java - 如何访问匿名对象内声明的字段?

php - MySQL 分组依据或排序依据

php - 如何使用codeigniter join函数从同一个表获取两个id数据

php - 如何使用 PHP 使我的输出文本可滚动?

javascript - 我如何在 PDF 传单中旋转自定义标记(在网站作品中)

javascript - 在 Nodejs Controller 内使用 Promise

error-handling - 常见的 lisp 重启到条件绑定(bind)

amazon-web-services - 如何处理来自 API 网关的 lambda 错误

javascript - 如何将文本更改为不可见,但仍显示下划线?

c# - bool 到 System.Windows.Visibility(动态创建 DataGridColumnHeaders 时的绑定(bind)问题)