我不知道为什么,但PHP,在创建文件时,例如,使用他们的内置函数,如file_put_contents()
,它默认文件权限为644
。
如何将其默认为777
?我需要它才能在以后使用我的FTP客户端编辑或删除它们。
答案 0 :(得分:0)
您可以使用chmod(文件名,模式)来更改文件权限。一个小测试,看它是否有效,重要的是使用clearstatcache()从PHP获得更新的答案:
$perms=fileperms("dummy.txt");
echo 'start : ' . substr(sprintf('%o', $perms), -4);
echo '<br />';
$success=chmod("dummy.txt", 0777);
var_dump($success);
echo '<br />';
clearstatcache(); // to make sure we get an updated answer
$perms_chg=fileperms("dummy.txt");
echo 'file permissions are changed to : ' . substr(sprintf('%o', $perms_chg), -4) . ' from : ' . substr(sprintf('%o', $perms), -4);
echo '<br />';
$time=time();
file_put_contents("dummy.txt", $time);
$perms=fileperms("dummy.txt");
echo 'file permissions after writing data to file : ' . substr(sprintf('%o', $perms), -4);
if($perms === $perms_chg)
{
echo '<br />';
echo 'file_put_contents has NOT changed file permissions';
}
else
{
echo '<br />';
echo 'file_put_contents HAS changed permissions to some default setting';
}