【发布时间】:2014-08-22 03:52:20
【问题描述】:
我在 Ubuntu 14.04 上运行 PHP 5.5.9。我在写入文件时遇到问题。我觉得这一定是文件权限问题,因为我很确定代码是正确的。我登录的用户有权写入我要写入的文件夹,但我不确定本地主机是否有。我不确定 localhost 用户的名称是什么才能使用chmod。我尝试使用chmod 777 -R /var/www/html,但脚本仍然无法写入我的目标文件夹,该文件夹的路径为/var/www/html/Projects/MD_ScrapingTool/files。这是我的代码:
$file = 'filetest.txt';
if($handle = fopen($file, 'w')) {
$content = "123\n456";
fwrite($handle, $content);
fclose($handle);
} else {
echo "Could not open file for writing.";
}
【问题讨论】:
-
在您的 PHP 文件顶部使用
error_reporting(E_ALL),输出什么错误? -
运行这段代码会发生什么?你看到你的回声声明了吗?如果是这样,则意味着您无法打开文件句柄,这可能表明您为文件指定的路径不正确。您可以尝试使用文件的绝对路径。您也可以使用 is_file 和 is_writable 来帮助您进行调试。此外,您可以考虑使用 file_put_contents 而不是使用 fopen、fwrite 和 fclose。
-
如果您自己解决问题,您应该将其发布为答案。请不要编辑问题来添加答案。
标签: php apache ubuntu file-io file-permissions