القائمة الرئيسية

الصفحات

 PHP - Files & I/O



This chapter will explain following functions related to files −

  • Opening a file
  • Reading a file
  • Writing a file
  • Closing a file

Opening and Closing Files

The PHP fopen() function is used to open a file. It requires two arguments stating first the file name and then mode in which to operate.

Files modes can be specified as one of the six options in this table.

سيشرح هذا الفصل الوظائف التالية المتعلقة بالملفات - فتح ملف قراءة ملف كتابة ملف إغلاق ملف فتح وإغلاق الملفات تُستخدم الوظيفة PHP fopen () لفتح ملف. يتطلب وسيطتين تذكران أولاً اسم الملف ثم الوضع الذي تعمل فيه. يمكن تحديد أوضاع الملفات كأحد الخيارات الستة في هذا الجدول.

Sr.NoMode & Purpose
1

r

Opens the file for reading only.

Places the file pointer at the beginning of the file.

2

r+

Opens the file for reading and writing.

Places the file pointer at the beginning of the file.

3

w

Opens the file for writing only.

Places the file pointer at the beginning of the file.

and truncates the file to zero length. If files does not

exist then it attempts to create a file.

4

w+

Opens the file for reading and writing only.

Places the file pointer at the beginning of the file.

and truncates the file to zero length. If files does not

exist then it attempts to create a file.

5

a

Opens the file for writing only.

Places the file pointer at the end of the file.

If files does not exist then it attempts to create a file.

6

a+

Opens the file for reading and writing only.

Places the file pointer at the end of the file.

If files does not exist then it attempts to create a file.

If an attempt to open a file fails then fopen returns a value of false otherwise it returns a file pointer which is used for further reading or writing to that file.

After making a changes to the opened file it is important to close it with the fclose() function. The fclose() function requires a file pointer as its argument and then returns true when the closure succeeds or false if it fails.



Reading a file

Once a file is opened using fopen() function it can be read with a function called fread(). This function requires two arguments. These must be the file pointer and the length of the file expressed in bytes.

The files length can be found using the filesize() function which takes the file name as its argument and returns the size of the file expressed in bytes.

So here are the steps required to read a file with PHP.

  • Open a file using fopen() function.

  • Get the file's length using filesize() function.

  • Read the file's content using fread() function.

  • Close the file with fclose() function.

The following example assigns the content of a text file to a variable then displays those contents on the web page.

إذا فشلت محاولة فتح ملف ، فسيقوم fopen بإرجاع قيمة false وإلا فإنه يقوم بإرجاع مؤشر ملف يُستخدم لمزيد من القراءة أو الكتابة إلى هذا الملف. بعد إجراء تغييرات على الملف المفتوح ، من المهم إغلاقه باستخدام الوظيفة fclose (). تتطلب الوظيفة fclose () مؤشر ملف كوسيطة لها ثم تُرجع صحيحًا عند نجاح الإغلاق أو خطأ إذا فشل. قراءة ملف بمجرد فتح الملف باستخدام وظيفة fopen () ، يمكن قراءته باستخدام وظيفة تسمى fread (). تتطلب هذه الوظيفة حجتين. يجب أن تكون هذه هي مؤشر الملف وطول الملف معبرًا عنه بالبايت. يمكن العثور على طول الملفات باستخدام وظيفة file () التي تأخذ اسم الملف كوسيطة لها وتعيد حجم الملف المعبر عنه بالبايت. إذن هذه هي الخطوات المطلوبة لقراءة ملف باستخدام PHP. افتح ملفًا باستخدام وظيفة fopen (). احصل على طول الملف باستخدام وظيفة ملف (). اقرأ محتوى الملف باستخدام وظيفة fread (). أغلق الملف بوظيفة fclose (). المثال التالي يعين محتوى ملف نصي لمتغير ثم يعرض تلك المحتويات على صفحة الويب.


<html>

   <head>
      <title>Reading a file using PHP</title>
   </head>
   
   <body>
      
      <?php
         $filename = "tmp.txt";
         $file = fopen( $filename, "r" );
         
         if( $file == false ) {
            echo ( "Error in opening file" );
            exit();
         }
         
         $filesize = filesize( $filename );
         $filetext = fread( $file, $filesize );
         fclose( $file );
         
         echo ( "File size : $filesize bytes" );
         echo ( "<pre>$filetext</pre>" );
      ?>
      
   </body>
</html>

It will produce the following result −النتيجة هذه

Reading File

Writing a file

A new file can be written or text can be appended to an existing file using the PHP fwrite() function. This function requires two arguments specifying a file pointer and the string of data that is to be written. Optionally a third integer argument can be included to specify the length of the data to write. If the third argument is included, writing would will stop after the specified length has been reached.

The following example creates a new text file then writes a short text heading inside it. After closing this file its existence is confirmed using file_exist() function which takes file name as an argument



كتابة ملف يمكن كتابة ملف جديد أو إلحاق نص بملف موجود باستخدام وظيفة PHP fwrite (). تتطلب هذه الوظيفة وسيطتين تحددان مؤشر ملف وسلسلة البيانات المراد كتابتها. اختياريًا ، يمكن تضمين وسيطة عدد صحيح ثالث لتحديد طول البيانات المراد كتابتها. إذا تم تضمين الوسيطة الثالثة ، فستتوقف الكتابة بعد الوصول إلى الطول المحدد. ينشئ المثال التالي ملفًا نصيًا جديدًا ثم يكتب عنوانًا نصيًا قصيرًا بداخله. بعد إغلاق هذا الملف يتم تأكيد وجوده باستخدام دالة file_exist () التي تأخذ اسم الملف كوسيطة


<?php
   $filename = "/home/user/guest/newfile.txt";
   $file = fopen( $filename, "w" );
   
   if( $file == false ) {
      echo ( "Error in opening new file" );
      exit();
   }
   fwrite( $file, "This is  a simple test\n" );
   fclose( $file );
?>
<html>
   
   <head>
      <title>Writing a file using PHP</title>
   </head>
   
   <body>
      
      <?php
         $filename = "newfile.txt";
         $file = fopen( $filename, "r" );
         
         if( $file == false ) {
            echo ( "Error in opening file" );
            exit();
         }
         
         $filesize = filesize( $filename );
         $filetext = fread( $file, $filesize );
         
         fclose( $file );
         
         echo ( "File size : $filesize bytes" );
         echo ( "$filetext" );
         echo("file name: $filename");
      ?>
      
   </body>
</html>

It will produce the following result −النتيجة هذه

Writing File

We have covered all the function related to file input and out in PHP File System Function chapter.

لقد قمنا بتغطية جميع الوظائف المتعلقة بإدخال الملفات وإخراجها في فصل وظيفة نظام ملفات PHP.

أقرا المزيد

هل اعجبك الموضوع :

تعليقات