umask() (umask)
umask() برای تنظیم «مجوز فایل PHP» است. «مجوز فایل (Permissions)» می گوید چه کسی می خواند، می نویسد، یا اجرا می کند. «ماسک (Mask)» عددی است که مجوزهای پیش فرض را کم می کند.
تعریف ساده و سینتکس
تابع umask() ماسک مجوز را تنظیم می کند و مقدار قبلی را برمی گرداند. اگر بدون آرگومان بخوانی، مقدار فعلی را می دهد.
<?php
$file = "test.txt";
echo umask();
?>
گام های عملی تنظیم مجوز پیش فرض
- با
umask()مقدار فعلی را بخوان. - با
umask($mask)مقدار جدید را ست کن. - در صورت نیاز، مقدار قبلی را برگردان.
<?php
$old = umask(0022);
echo $old;
umask($old);
?>
ساختار عددی ماسک و منطق آن
ماسک چهار رقم اکتال دارد. رقم اول همیشه صفر است. رقم دوم مالک است. رقم سوم گروه است. رقم چهارم سایرین هستند. اعداد 1 اجرا، 2 نوشتن، 4 خواندن هستند. برای ترکیب، جمع می شوند.
نکته ها و هشدارها
نکته: ماسک نهایی برابر mask & 0777 در PHP است.
هشدار: ماسک اشتباه می تواند دسترسی را محدود کند. ابتدا مقدار قبلی را ذخیره کن.
لینک های مرتبط
برای کار با مجوز فایل، به chmod() هم نگاه کن.
برای ساخت پوشه و اثر ماسک، mkdir() را ببین.
فهرست توابع فایل سیستم در W3Schools
جمع بندی سریع
- umask مجوزهای پیش فرض را کم می کند.
- بدون ورودی، مقدار فعلی را می دهد.
- با ورودی، مقدار قبلی را برمی گرداند.
- 1 اجرا، 2 نوشتن، 4 خواندن است.
- قبل از تغییر، مقدار قبلی را ذخیره کن.