(PHP 4, PHP 5, PHP 7, PHP 8)
umask — 改變當(dāng)前的 umask
$mask
= ?): int
umask() 將 PHP 的 umask 設(shè)定為
mask
& 0777 并返回原來的
umask。當(dāng) PHP 被作為服務(wù)器模塊使用時(shí),在每個(gè)請(qǐng)求結(jié)束后 umask
會(huì)被恢復(fù)。
mask
The new umask.
無參數(shù)調(diào)用 umask() 會(huì)返回當(dāng)前的 umask,有參數(shù)則返回原來的 umask。
示例 #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');
}
?>
注意:
在多線程的服務(wù)器上盡量避免使用這個(gè)函數(shù)。創(chuàng)建文件后要改變其權(quán)限最好還是使用 chmod()。使用 umask() 會(huì)導(dǎo)致并發(fā)程序和服務(wù)器發(fā)生不可預(yù)知的情況,因?yàn)樗鼈兪鞘褂孟嗤?umask 的。