الفرق بين المراجعتين لصفحة: «PHP/chmod»
جميل-بيلوني (نقاش | مساهمات) إضافة محتويات الصفحة. |
ط استبدال النص - 'تصنيف:PHP Filesystem تصنيف:PHP Function' ب'تصنيف:PHP Function تصنيف:PHP Filesystem' |
||
سطر 56: | سطر 56: | ||
* [http://php.net/manual/en/function.chmod.php صفحة الدالة chmod في توثيق PHP الرسمي.] | * [http://php.net/manual/en/function.chmod.php صفحة الدالة chmod في توثيق PHP الرسمي.] | ||
[[تصنيف:PHP]] | [[تصنيف:PHP]] | ||
[[تصنيف:PHP Function]] | |||
[[تصنيف:PHP Filesystem]] | [[تصنيف:PHP Filesystem]] | ||
المراجعة الحالية بتاريخ 03:48، 22 أبريل 2018
(PHP 4, PHP 5, PHP 7)
تغيِّر الدالة chmod()
أذونات الملف.
الوصف
bool chmod ( string $filename , int $mode )
تغيِّر هذه الدالة أذونات الملف filename
إلى النمط mode
، يُشار عادةً إلى mode
بالأذونات.
المعاملات
filename
مسار الملف الذي ستُجرى عليه العمليَّة.
mode
نمط الأذونات المحدَّد.
تُمثَّل الأذونات بالنظام الثماني ولا تفترض الدالة تلقائيًّا أنَّ العدد المُمرَّر إليها هو قيمة ثمانيَّة إلا إذا سُبقت تلك القيمة بالرقم 0، لذا يجب إضافة 0 دومًا لتصبح القيمة بالنظام الثماني ولتعمل الدالة بطريقة صحيحة. انتبه إلى أنَّ السلاسل النصيَّة مثل g+w
غير مدعومة.
<?php
chmod("/somedir/somefile", 755); // عشري؛ خطأ
chmod("/somedir/somefile", "u+rwx,go+rx"); // سلسلة نصيَّة؛ خطأ
chmod("/somedir/somefile", 0755); //mode ثماني؛ قيمة صحيحة للمعامل
?>
يتألف المعامل mode
من ثلاثة أرقام ثمانيَّة تحدِّد أذونات الملف للمالك، وللمجموعة المالكة التي يكون المالك عضوًا فيها، ولباقي المستخدمين على التوالي. يحدِّد كلُّ رقم من تلك الأرقام الأذونات المطلوبة التي ستُمنح أو ستُضاف للمستخدم المحدَّد (المالك أو المجموعة أو باقي المستخدمين) بحسب موقع الرقم. يشير الرقم الثماني 1 إلى منح إذن التنفيذ، والرقم الثماني 2 إلى منح إذن الكتابة، والرقم الثماني 4 إلى جعل الملف قابلًا للقراءة؛ يمكنك قراءة شرح جميع الأذونات باستعمال الأمر man 1 chmod
والأمر man 2 chmod
على أيِّ نظام شبيه بيونكس.
<?php
// منح إذن القراءة والكتابة للمالك فقط، ولا شيء لبقيَّة المستخدمين
chmod("/somedir/somefile", 0600);
// منح إذن القراءة والكتابة للمالك، وإذن القراءة للأشخاص الآخرين
chmod("/somedir/somefile", 0644);
// منح جميع الأذونات للمالك، وإذن القراءة والتنفيذ لغيره
chmod("/somedir/somefile", 0755);
// منح جميع الأذونات للمالك، وإذن القراءة والتنفيذ لمجموعة المالك فقط
chmod("/somedir/somefile", 0750);
?>
القيم المعادة
تُعاد القيمة TRUE
عند نجاح العملية، والقيمة FALSE
خلاف ذلك.
ملاحظات
- المستخدم الحالي هو المستخدم الذي تعمل PHP لديه، ويختلف عن ذاك المستخدم الذي يستعمل الصدفة العادية (normal shell) أو الوصول عبر FTP. لا يمكن لأحد تغيير الأذونات لملف سوى مالكه فقط وهذا ينطبق على جميع الأنظمة.
- لا تعمل هذه الدالة مع الملفات البعيدة إذ يجب فحص الملف أولًا وذلك بأن يتمكن نظام ملفات الخادوم من الوصول إليه.
- إن كان الوضع الآمن (safe mode) مفعَّلًا، فستتحقَّق PHP فيما إذا كان الملف أو المجلَّد الذي ستُجرى عليه العمليَّة يملك مُعرِّف المستخدم المالك (UID) ذاته الذي يملكه السكربت الذي ينفَّذ آنذاك. لا تستطيع أيضًا تغيير معرِّف المستخدم SUID أو معرِّف المجموعة SGID أو البتات اللاصقة (sticky bits).
انظر أيضًا
- الدالة
chown()
: تغيير مالك الملف. - الدالة
chgrp()
: تغيير المجموعة المالكة للملف. - الدالة
fileperms()
: إعادة أذونات الملف الحالية. - الدالة
stat()
: إعادة معلومات حول الملف.