【发布时间】:2016-08-25 07:06:06
【问题描述】:
我使用 Ubuntu 作为我的操作系统,并且我在其中安装了 XAMPP。在htdocs 文件夹中,我创建了一个项目文件夹,其中有index.php 文件。现在在 index.php 中,一部分代码是这样做的:
fopen("colors_new.csv", "w");
来自manual,
'w' 只为写入而打开;将文件指针放在开头 文件并将文件截断为零长度。 如果文件没有 存在,尝试创建它。
但是我没有创建文件,而是得到了
Warning: fopen(colors_new.csv): failed to open stream: Permission denied...
当我查看项目文件夹时,colors_new.csv 文件并未创建。
当我在另一台运行 Windows 操作系统的计算机上运行此程序时,它运行成功。文件已成功创建。
如何在 Ubuntu 中解决这个问题?
我尝试了什么:
我尝试运行 sudo chmod 777 colors_new.csv,但得到 chmod: can not access colors_new.csv. No such file or directory.。当终端在项目目录中时,我仅使用文件名(如图所示)进行了尝试;以及提供文件的完整绝对路径。两次都出现同样的错误。
注意:我看到了其他问题,如上所述,我尝试授予文件权限。其他问题没有解决问题,下面接受的答案确实解决了。
【问题讨论】:
-
在运行 chmod 命令之前,您必须在文件的位置。否则会抛出错误:chmod: can not access colors_new.csv。没有这样的文件或目录
-
问题不在于文件,因为它不是创建的,而是文件夹/目录,您很可能没有在目录/文件夹中创建文件的权限