Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php mkdir从字符串传递_Php_Mkdir_Octal - Fatal编程技术网

php mkdir从字符串传递

php mkdir从字符串传递,php,mkdir,octal,Php,Mkdir,Octal,我正在使用mkdir()分配目录权限。但是我不能通过硬编码来传递文件权限。相反,我从配置文件获取文件权限,读取该文件的函数返回的值为字符串格式。我知道如果将0755作为字符串传递,它将不会被视为八进制数 所以我是这样做的 mkdir($dirPath, (int)base_convert(env("FILE_ACCESS", "0766"), 8, 10), true); 函数env返回存储在配置文件中的值。但是,如果配置文件中没有定义权限,它只返回字符串“0766” 但是正在目录上设置的权限

我正在使用
mkdir()
分配目录权限。但是我不能通过硬编码来传递文件权限。相反,我从配置文件获取文件权限,读取该文件的函数返回的值为字符串格式。我知道如果将0755作为字符串传递,它将不会被视为八进制数

所以我是这样做的

mkdir($dirPath, (int)base_convert(env("FILE_ACCESS", "0766"), 8, 10), true);
函数env返回存储在配置文件中的值。但是,如果配置文件中没有定义权限,它只返回字符串
“0766”


但是正在目录上设置的权限是0744。

您的意思是写
getenv
而不是
env
?或者它是一个自定义函数-如果是,请分享:)如果你使用的是windows,模式被忽略:@pilan我使用的是Ubuntu,你不需要知道env函数的逻辑。它总是返回一个包含文件权限的字符串。好的,选中了
umask
?我不想使用它。客户想要它而不带umask
$originalUmask = umask(0); // sets umask to 0 and return original

// do your mkdir here

umask($originalUmask); // back to safe again ;)