gpt4 book ai didi

PHP fopen、fwrite 和 fclose 继续没有错误,但没有创建文件

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:04:40 24 4
gpt4 key购买 nike

我在两个 ubuntu 16.04 上的 LAMP 下运行 PHP 7.0.22。

下面的代码在没有抛出异常的情况下继续执行并且 $tempFile 具有值 Resource id #4。

    try {
// Open temp file for writing
$tempFile = fopen("/var/www/dropbox/temp.lst", "w");

echo "tempfile=" . $tempFile . "<br>";

// Write list of file names to file
for ($x = 0; $x <= $inputFileCount; $x++) {
fwrite($tempFile, $fileNames);
}

// Close temp file
fclose($tempFile);
} catch ( Exception $e ) {
// send error message if you can
echo 'Caught exception: ', $e->getMessage(), "\n";
}

但是,在目录/var/www/dropbox/中没有出现名为 temp.lst 的文件,该文件具有完全写入权限。

ls -ld /var/www/dropbox/
drwxrwsrwx 2 ubuntu www 4096 Mar 25 18:13 /var/www/dropbox/

没有显示与代码相关的错误

cat /var/log/apache2/error.log

最佳答案

fopen, fwrite, fclose 不抛出异常,它们返回错误

尝试

try {
// Open temp file for writing
$tempFile = fopen("/var/www/dropbox/temp.lst", "w");
if (false === $tempFile) throw new \RuntimeException("Failed to open file");

echo "tempfile=" . $tempFile . "<br>";

// Write list of file names to file
for ($x = 0; $x <= $inputFileCount; $x++) {
if(false === fwrite($tempFile, $fileNames)) throw new \RuntimeException("Failed to write to file");
}

// Close temp file
if(false === fclose($tempFile)) throw new \RuntimeException("Failed to close file");
} catch ( Exception $e ) {
// send error message if you can
echo 'Caught exception: ', $e->getMessage(), "\n";
}

你应该得到一些异常(exception)

关于PHP fopen、fwrite 和 fclose 继续没有错误,但没有创建文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49479658/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com