我对 PHP 比较陌生,我正在尝试制作一个脚本来记录来自 try/catch 块的错误。我在尝试这样做时遇到了范围问题。
首先,我试图使类实例成为全局变量,但没有奏效。
我知道每次调用“AnotherClass”时都可以创建一个新实例;但是,这将清除 'errorhandler' 中的 '$errors' 数组。
我已经在这个问题上停留了几个小时,任何帮助将不胜感激!
<?php
class errorhandler
{
private $errors = [];
function log($e = '')
{
print "Opps! An error occured: " . $e;
array_push($this->errors, $e);
}
}
# global $errorhandler; # Doesn't work...
$errorhandler = new errorhandler();
class AnotherClass
{
function __construct()
{
try {
$not_possible = 1/0;
} catch (Exception $e) {
$errorhandler->log($e); # Doesn't work
}
}
}
new AnotherClass();
?>
谢谢 :)