php.mkdir().将$mode设置为字符串变量的前导零



好的,我们在php.net上有一个例子:

mkdir($structure, 0777, true);

如何从变量中设置0777整数?

我有环境变量,例如PERMISSIONS=0755。而0755是一个字符串。正如我所看到的,没有办法将字符串转换为以零开头的int。

那么,有什么方法可以从变量中设置权限吗?

define('PERMISSIONS', '0755');
mkdir($structure, PERMISSIONS, true); // bad!
mkdir($structure, intval(PERMISSIONS), true); // bad too!

您想要函数octdec:

$permissions = octdec($_SERVER['PERMISSONS']);
mkdir($structure, $permissions, true);

将初始集定义为整数。

define('PERMISSIONS', 0755);

define('PERMISSIONS', '0755');
$permission = intval(PERMISSIONS);
mkdir($structure, $permission, true);

最新更新