当脚本尝试使用“w”(写入)模式打开新文件时,我刚刚收到一个关于权限被拒绝错误的错误报告。这是相关的功能:
function writePage($filename, $contents) {
$tempfile = tempnam('res/', TINYIB_BOARD . 'tmp'); /* Create the temporary file */
$fp = fopen($tempfile, 'w');
fwrite($fp, $contents);
fclose($fp);
/* If we aren't able to use the rename function, try the alternate method */
if (!@rename($tempfile, $filename)) {
copy($tempfile, $filename);
unlink($tempfile);
}
chmod($filename, 0664); /* it was created 0600 */
}
你可以看到第三行是我使用 fopen 的地方。我想捕获权限被拒绝的错误并自己处理它们,而不是打印错误消息。我意识到这很容易使用 try/catch 块,但可移植性是我脚本的一大卖点。我不能牺牲与 PHP 4 的兼容性来处理错误。请帮助我在不打印任何错误/警告的情况下捕获权限错误。