我有这个简单的测试用例文件:
<?php
echo @filesize("notexistentfile");
echo "Done";
当我通过 nginx + fastcgi 运行它时,有时它会按预期打印完成(不存在文件上的文件大小预计会引发一个 E_WARNING 被 @ 运算符屏蔽),有时我会收到一个奇怪的消息:
致命错误:未捕获的异常 'Exception' 带有消息 'filesize() [function.filesize]: stat failed for
说清楚:我没有任何类型的 error_handler 可以拦截错误然后抛出异常。
让我们更清楚一点:问题不在于文件大小失败或工作:它总是失败(如 exepcted),因为文件不存在。
问题是有时会因 E_WARNING 而失败,有时会出现异常