في هذا الدرس مفصل سوف تتعلم كيف تقوم بتخزين البيانات في ملفات وكيف تقوم بقراءة هذه البيانات وكيفية التعامل مع هذه الملفات.
بواسطة الـphp يمكنك تخزين البيانات إما بقاعدة بيانات أو في ملف
في هذا الدرس مفصل سوف تتعلم كيفية تخزين البيانات في ملف وكيفية استخدام هذه البيانات والاستفادة منها
تتم عملية معالجة البيانات بالخطوات التالية:
الكتابة في ملف:
1- فتح الملف الذي يكون قد تم إنشاءه مسبقاً أو يقوم البرنامج بإنشاءه.
2- الكتابة في الملف.
3- إغلاق الملف.
القراءة من ملف:
1- فتح الملف.
2- قراءة البيانات من الملف.
3- إغلاق الملف.
طريقة فتح الملف:
تستخدم الدالة fopen()، تحتاج هذه الدالة لتحديد العملية التي نرغب بالقيام بها للملف وهي كالتالي:
r: القراءة من الملف من بدايته.
r+: القراءة والكتابة من الملف من بدايته.
w:الكتابة بالملف من بدايته مع حذف المحتويات الموجودة مسبقاً إن وجدت، وإذا لم يكن الملف موجوداً يتم إنشاءه.
w+:الكتابة والقراءة من الملف من بدايته مع حذف المحتويات الموجودة مسبقاً إن وجدت، وإذا لم يكن الملف موجوداً يتم إنشاءه.
a:الكتابة بالملف بدءاً من نهاية محتوياته، وإذا لم يكن الملف موجوداً يتم إنشاءه.
a+:الكتابة والقراءة من الملف بدءاً من نهاية محتوياته، وإذا لم يكن الملف موجوداً يتم إنشاءه.
ومما ورد ذكره لنفتح الملف المسمى ****s.txt والموجود مثلاً داخل مجلد اسمه ****** نستخدم الأمر التالي:
وباستخدام هذا الأمر سوف يتم فتح الملف المطلوب والكتابة به من بدايته وحذف البيانات الموجودة مسبقاً إن وجدت، وسوف يقوم الأمر تلقائياً بإنشاء الملف إذا لم يكن موجوداً
(هذا ماسوف يقوم البرنامج بسبب استخدام w في البارامتر الثاني للدالة fopen)
طريقة الكتابة بالملف:
للكاتبة داخل الملف الذي قمنا بفتحه بالخطوة السابقة نستخدم الدالة fwrite()
ويتم كتابة الدالة بالشكل التالي:
اقتباس:
<?php
fwrite ($fileopen, $the****s);
?>
حيث المتغير fileopen هو المتغير الذي أنشأناه في الخطوة السابقة والمتغير $the****s هو المتغير الذي سنضع به الأسماء التي سوف نخزنها في الملف وسوف يكون كالتالي:
اقتباس:
<?php
$the****s = "mohammed, ali, mahmoud";
?>
طريقة إغلاق الملف:
لإغلاق الملف نستعمل الدالة fclose() كالتالي:
اقتباس:
<?php
fclose($fileopen);
?>
اقتباس:
تلخيص للخطوات السابقة:
في الخطوات الثلاثة السابقة قمنا بفتح الملف المسمى ****.txt والموجود داخل المجلد ****** وقمنا بكتابة الاسماء الثلاثة (محمد وعلي ومحمود) ثم قمنا بإغلاق الملف
ملاحظة:
لكي يتمكن المستخدم من الكتابة بالملف راجع درس مفصل النماذج للتمكن من عمل نموذج يتم بواسطته إدخال البيانات إلى الملف.
القراءة من الملفات:
للقراءة من ملف يجب في البداية فتح هذا الملف كما ذكرنا سابقا ولفتح الملف الذي قمنا بالكتابة عليه في الخطوة السابقة نستخدم الأمر:
اقتباس:
<?php
$fileopen = fopen("******/****s.txt", "r");
?>
لاحظ أنه نفس الأمر الذي استخدمناه سابقاً مع استبدال w بـr
ثم للقراءة من الملف نستخدم الدالة fgets كالتالي (تستخدم هذه الدالة لقراءة سطر كل مرة):
اقتباس:
<?php
$read = fgets($fileopen, 50);
?>
سوف تقوم هذه الدالة بقراءة سطر من الملف كل مرة أو تقراً عندما تصل إلى 50 بايتاً، وإذا لم تحدد البايتات في الدالة تستخدم القيمة الإفتراضية وهي 1024 بايت (1 كيلو بايت)
ثم لإغلاق الملف نستعمل الدالة fclose() كالتالي:
اقتباس:
<?php
fclose($fileopen)
?>
أو بإمكانك استخدام الدالة readfile() لقراءة الملف بأكمله بالشكل التالي بدلاً من الخطوات السابقة:
اقتباس:
<?php
readfile ("******/****s.txt");
?>
اقتباس:
ملاحظة: يوجد عدد من الدوال الأخرى للتعامل مع الملفات لن يستنى لنا ذكرها، يمكنك مراجعة php.net للتعرف عليها جميعها.