我有寫一些行到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