我有写一些行到CSV文件PHP脚本:文件权限的fopen - PHP
$fp = fopen($csv, 'w');
我使用模式“W”,这样它会如果它创建的文件不存在,但是即使我给整个/ var/www/html /目录提供了777(不是一个好主意但适合测试),该文件将自动被授予权限。
我该如何写入文件并事先授予它权限?还是有更好的方法来给写权限?
我有写一些行到CSV文件PHP脚本:文件权限的fopen - PHP
$fp = fopen($csv, 'w');
我使用模式“W”,这样它会如果它创建的文件不存在,但是即使我给整个/ var/www/html /目录提供了777(不是一个好主意但适合测试),该文件将自动被授予权限。
我该如何写入文件并事先授予它权限?还是有更好的方法来给写权限?
之前手并设置权限创建文件:
touch('/file/path/here');
chmod('/file/path/here', 0775);
fopen('/file/path/here', 'w');
但是,这不应该是一个问题。如果PHP/Apache用户使用fopen
创建文件,则他们有权写入该文件。
所有者似乎更改为'apache'。我不想将所有者硬编码到PHP中,因为该域可能会更改。 – AlxVallejo 2012-08-16 21:11:04
您是否遇到过上述代码的不同行为? – 2012-08-16 21:14:00
是的,这会做。谢谢! – AlxVallejo 2012-08-16 21:28:56
你有麻烦写入文件?由于所有者具有读/写权限,所以644应该可以写入。 – 2012-08-15 14:18:24
@MattK它似乎在'Apache'的所有者下创建csv,该目录与目录中所有其他文件的所有者不同 – AlxVallejo 2012-08-16 20:53:18