العمل مع نظام الملفات في PHP: دليل شامل

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

العمل مع نظام الملفات في PHP: الأساسيات والأمثلة العملية



العمل مع نظام الملفات هو إحدى المهام الأساسية في تطوير الويب باستخدام PHP. سواء كان ذلك رفع الصور، أو كتابة السجلات، أو قراءة ملفات التكوين، أو إدارة البيانات المؤقتة — فإن معرفة دوال العمل مع الملفات والدلائل ضرورية لكل مطور PHP. في هذه المقالة، سنشرح بالتفصيل العمليات الأساسية: فتح، قراءة، كتابة، إغلاق الملفات، بالإضافة إلى إدارة المجلدات وصلاحيات الوصول.



الدوال الأساسية للعمل مع الملفات في PHP



توفر PHP مجموعة غنية من الدوال المدمجة. دعنا نستعرض أهمها.



فتح وإغلاق الملف: fopen() و fclose()



لبدء العمل مع ملف، يجب فتحه باستخدام fopen(). تأخذ الدالة معاملين إجباريين: مسار الملف ووضع الفتح. يحدد الوضع ما يمكنك فعله بالملف: القراءة، الكتابة، إضافة البيانات إلى النهاية، إلخ.



الأوضاع الأساسية:

  • r — للقراءة فقط. المؤشر في بداية الملف.
  • r+ — للقراءة والكتابة. المؤشر في البداية.
  • w — للكتابة فقط. إذا كان الملف موجودًا، يتم مسحه. إذا لم يكن موجودًا، يتم إنشاؤه.
  • w+ — للقراءة والكتابة. يمسح الملف أو ينشئ ملفًا جديدًا.
  • a — للكتابة فقط في نهاية الملف. إذا لم يكن الملف موجودًا، يتم إنشاؤه.
  • a+ — للقراءة والكتابة في النهاية.


<?php$file = fopen("example.txt", "w"); // نفتح الملف للكتابةif ($file) {    echo "تم فتح الملف بنجاح.";    fclose($file); // أغلق الملف دائمًا بعد الانتهاء من العمل} else {    echo "فشل فتح الملف.";}?>


القراءة من الملف: fgets()، fread() و file_get_contents()



أسهل طريقة لقراءة الملف بأكمله هي الدالة file_get_contents(). تقوم بإرجاع المحتوى كسلسلة نصية.



<?php$content = file_get_contents("example.txt");echo $content;?>


إذا كنت بحاجة للقراءة سطرًا بسطر (مثلاً، للملفات الكبيرة)، استخدم fgets() في حلقة:



<?php$file = fopen("example.txt", "r");while (!feof($file)) {    $line = fgets($file);    echo $line . "<br>";}fclose($file);?>


تتيح الدالة fread() قراءة عدد محدد من البايتات:



<?php$file = fopen("example.txt", "r");$content = fread($file, 100); // نقرأ أول 100 بايتecho $content;fclose($file);?>


الكتابة في الملف: fwrite() و file_put_contents()



لكتابة البيانات في ملف، من المناسب استخدام file_put_contents(). تقوم بفتح الملف، وكتابة السلسلة النصية، وإغلاقه بأمر واحد.



<?php$data = "مرحبًا، أيها العالم!";file_put_contents("example.txt", $data);?>


إذا كنت بحاجة لإضافة البيانات إلى النهاية، استخدم العلم FILE_APPEND:



<?php$data = "سطر جديد";file_put_contents("example.txt", $data, FILE_APPEND);?>


للحصول على كتابة أكثر مرونة (مثلاً، في الوضع الثنائي)، يتم استخدام fwrite():



<?php$file = fopen("example.txt", "w");fwrite($file, "سطر للكتابة");fclose($file);?>


العمل مع الدلائل في PHP



بالإضافة إلى الملفات، تتيح PHP إدارة المجلدات: إنشاؤها، حذفها، وقراءة محتوياتها.



إنشاء وحذف المجلدات: mkdir() و rmdir()



تقوم الدالة mkdir() بإنشاء دليل جديد. يمكن تحديد صلاحيات الوصول كمعامل ثانٍ (الافتراضي هو 0777).



<?phpif (mkdir("new_folder", 0777)) {    echo "تم إنشاء المجلد.";} else {    echo "خطأ في إنشاء المجلد.";}?>


لحذف مجلد فارغ، استخدم

المدونات

توصيات الكتب