【发布时间】:2013-07-30 23:46:48
【问题描述】:
我想动态创建一个文件并向其中写入一些 JSON。我有 JSON,这很好。但是当我尝试创建文件时出现了问题。似乎这可能是权限或文件所有者的问题,但我不确定如何解决它。这是我的代码:
$strFile = PUBLIC_PATH . '/javascript/members.json';
if (!file_exists($strFile)) {
chmod(PUBLIC_PATH . '/javascript', 0755); // operation not permitted error
fopen($strFile, 'w');
chmod($strFile, 0755);
chown($strFile, 'www');
}
file_put_contents($strFile, $arrMembers);
我觉得我在这里遗漏了一些非常明显的东西。
【问题讨论】:
-
我相信我必须将所有者设置为 www。当前所有者是我的计算机。
-
如果网络服务器用户一开始没有编辑文件/目录的权限,它不能用chmod改变权限。您必须在 PHP 脚本之外执行此操作。
-
chown 必须先运行,但只有所有者或su/root 才能修改所有者和权限。
标签: php file file-permissions