الدالة file_exists()‎ في PHP

من موسوعة حسوب
< PHP
مراجعة 11:23، 21 أبريل 2018 بواسطة جميل-بيلوني (نقاش | مساهمات) (إضافة محتويات الصفحة.)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

(PHP 4, PHP 5, PHP 7)

تتحقَّق الدالة file_exists()‎ من وجود ملف أو مجلَّد محدَّد.

الوصف

bool file_exists ( string $filename )

تتحقَّق هذه الدالة إن كان الملف أو المجلَّد filename موجودًا أو لا.

المعاملات

filename

مسار الملف أو المجلَّد المُراد التحقُّق من وجوده.

استعمل على ويندوز المسار ‎//computername/share/filename أو ‎\\computername\share\filename للتحقُّق من الملفات المُشاركة على الشبكة.

القيم المعادة

تُعاد القيمة TRUE إن كان الملف أو المجلَّد المحدَّد بوساطة المعامل filename موجودًا، وتُعاد القيمة FALSE إن لم يكن.

ملاحظة: ستعيد هذه الدالة القيمة FALSE إن أشارت الوصلات الرمزية (symlinks) إلى ملف غير موجود.

تحذير: ستعيد هذه الدالة القيمة FALSE عندما لا تستطيع الوصول إلى ملفات موجودة وذلك بسبب قيود الوضع الآمن (safe mode). ومع ذلك، يمكن تضمين هذه الملفات إن كانت موجودة في المجلد safe_mode_include_dir.

ملاحظة: سيُجرى التحقُّق باستعمال معرِّف المستخدم أو المجموعة UID/GID الحقيقي عوضًا عن المعرف الفعَّال EUID/EGID.

ملاحظة: لمَّا كان نوع الأعداد الصحيحة في PHP هو ذات إشارة (signed) وأغلب المنصات تستعمل الأعداد الصحيحة بطول 32 بت، فقد تعيد بعض دوال نظام الملفات نتائج مخالفة للتوقعات عند استعمالها مع ملفات ذات حجم أكبر من 2 غيغابايت.

أمثلة

المثال 1: استعمال الدالة file_exists()‎ للتأكُّد من وجود ملف

<?php
$filename = '/path/to/foo.txt';

if (file_exists($filename)) {
    echo "The file $filename exists";
} else {
    echo "The file $filename does not exist";
}
?>

الأخطاء والاستثناءات

سيُصدَر تحذير E_WARNING عند فشل الدالة.

ملاحظات

ستُخزَّن نتيجة هذه الدالة. راجع صفحة الدالة clearstatcache()‎ للمزيد من التفاصيل.

انظر أيضًا

  • الدالة is_readable()‎: تتحقَّق إن كان الملف موجودًا وقابلًا للقراءة.
  • الدالة is_writable()‎: تتحقَّق إن كان الملف موجودًا وقابلًا للكتابة.
  • الدالة is_file()‎: تتحقَّق إن كان الملف هو ملفٌّ عاديٌّ.
  • الدالة file()‎: تقرأ محتويات الملف كاملةً وتضعها في مصفوفة.

مصادر