在多年的php编程之后,这个问题在我看来仍然很奇怪。
我想让一个文件以友好方式写入,以避免在生产/开发中的权限出现问题…但它仍然给我带来麻烦。
有人能给我解释一下我错了什么吗?

// permissions    -- the folder writable by www-data
//drwxrwxrwx 2 www-data www-data  4096 mag 24 12:19 Details

// then the file not writable by the owner
-r----x--t 1 www-data www-data 0 giu  8 12:48 /home/giuseppe/homeProj//Ariprova/trunk/PhpCsv/phpcsv/ConfigClasses/Helpers/Virtuemart2/Details/324-PartsToAdd.json

// then the code

if (!file_exists($fileRequest)) {   // it's found
                throw new Exception ('File non trovato. Nome File completo: '.$fileRequest. ' con cartella '.  getcwd());
                }

if (!is_writable($fileRequest)) {
                $results = @chmod($fileRequest, '0777');  //this gives true

            }

            $fileReq = fopen($fileRequest, 'w');
            fwrite($fileReq, 'a string' );   // this writes nothing on file

            fclose($fileReq);

最佳答案

chmod($fileRequest, '0777')更改为chmod($fileRequest, 0777)。字符串'0777'将转换为一个数值,即777十进制,这不是您所期望的;您真正想要的是0777八进制。

关于php - php设置权限文件使其可写,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10947558/

10-10 05:24