الدالة umask()
في PHP
< PHP
(PHP 4, PHP 5, PHP 7)
تغيِّر الدالة umask()
قيمة القناع umask
الحاليَّة.
الوصف
int umask ([ int $mask ] )
تضبط هذه الدالة قيمة القناع umask
في PHP إلى القيمة mask & 0777 ثمَّ تعيد قيمة umask
السابقة. عندما تُستعمل PHP كوحدة من وحدات الخادم، فستُستعاد قيمة umask
عند انتهاء كلِّ طلب.
المعاملات
mask
قيمة umask
الجديدة.
القيم المعادة
تُعاد قيمة umask
الحاليَّة إن لم يُمرَّر أيُّ معامل، أو ستُعاد قيمة umask
السابقة خلافًا لذلك.
أمثلة
المثال 1: استعمال الدالة umask()
<?php
$old = umask(0);
chmod("/path/some_dir/some_file.txt", 0755);
umask($old);
// إجراء عملية التحقق
if ($old != umask()) {
die('An error occurred while changing back the umask');
}
?>
ملاحظات
تجنَّب استعمال هذه الدالة مع خوادم الويب متعدِّدة الخيوط (multithreaded). من الأفضل تغيير أذونات الملف باستعمال الدالة chmod()
بعد إنشاء الملف. يمكن أن يؤدِّي استعمال الدالة umask()
آنذاك إلى سلوك غير متوقع للسكربتات التي تعمل في آن واحد ولخادم الويب بذاته لأنها تستعمل جميعها القيمة umask
نفسها.