umask — 改变当前的 umask

2017-12-18 23:15:25
linefo
499
最后编辑:linefo 于 2017-12-18 23:18:03

umask

(PHP 4, PHP 5, PHP 7)

umask改变当前的 umask

说明

int umask ([ int $mask ] )

umask() 将 PHP 的 umask 设定为 mask & 0777 并返回原来的 umask。当 PHP 被作为服务器模块使用时,在每个请求结束后 umask 会被恢复。

参数

mask

The new umask.

返回值

无参数调用 umask() 会返回当前的 umask,有参数则返回原来的 umask。

范例

Example #1 umask() 例子

<?php
$old 
umask(0);
chmod("/path/some_dir/some_file.txt"0755);
umask($old);

// Checking
if ($old != umask()) {
    die(
'An error occured while changing back the umask');
}
?>

注释

Note:

在多线程的服务器上尽量避免使用这个函数。创建文件后要改变其权限最好还是使用 chmod()。使用 umask() 会导致并发程序和服务器发生不可预知的情况,因为它们是使用相同的 umask 的。