如何找到mkdir从PHP失败的原因?
2022-08-30 16:47:26
PHP 的 mkdir 函数只返回 true 和 false。问题是当它返回 false 时。
如果我在启用错误报告的情况下运行,则会在屏幕上看到错误消息。我还可以在Apache日志中看到错误消息。但我想获取消息的文本并用它做其他事情(例如,通过IM发送给自己)。如何获取错误文本?
更新:按照艾曼的想法,我得出了这个结论:
function error_handler($errno, $errstr) {
global $last_error;
$last_error = $errstr;
}
set_error_handler('error_handler');
if (!mkdir('/somedir'))
echo "MKDIR failed, reason: $last_error\n";
restore_error_handler();
但是,我不喜欢它,因为它使用全局变量。任何更清洁的解决方案的想法?