PHP Append Text to a File

To append text to a file in PHP, we need to process similar task as done in writing text to a file. The only thing we have to change, is to change the file opening mode.

Therefore, use either a or a+ mode.

The a mode is used to append data to a file, whereas a+ mode is used to append data to a file along with read function. That is, with a+, we can append the data, then can use rewind() or seek() function to move the file pointer at any position in the file, to read its content.

PHP Append Data to a File Example

<?php
   $fp = fopen("fresherearth.txt", "a");
   fwrite($fp, "PHP is Fun");
   fclose($fp);
?>

After executing the above PHP example, the text/data PHP is Fun will get appended to the file named fresherearth.txt. Here is the snapshot of the file, fresherearth.txt, after executing the above PHP code:

php append text to file

You can use fwrite($fp, "\nPHP is Fun"); to append the text from new line.

Note - The fopen() opens a file.

Note - The fwrite() used to write content to a file.

Note - The fclose() closes a file.

Let me create another example on appending the data to a file with some little elaboration and modification based on previous example:

<?php
   $file = "fresherearth.txt";
   $fp = fopen($file, "a+");
   if($fp)
   {
      echo "<h1>The content of file is:</h1>";
      while(!feof($fp))
      {
         $line = fgets($fp);
         echo $line;
         echo "<br>";
      }
      
      // appending the new data (two lines of text) to the file
      fwrite($fp, PHP_EOL);
      $x = "Yes, PHP is Fun!";
      fwrite($fp, $x.PHP_EOL);
      $x = "What do you think?";
      fwrite($fp, $x);
      
      echo "<h1>Now the content of file after appending is:</h1>";
      rewind($fp);
      while(!feof($fp))
      {
         $line = fgets($fp);
         echo $line;
         echo "<br>";
      }
      
      fclose($fp);
   }
   else
      echo "<p>Unable to open the file</p>";
?>

The output of above PHP example is shown in the following snapshot:

php append data to file

Note - The feof() check whether the file pointer has been reached to the end of the file.

Note - The fgets() used to read the content of a file, line-by-line.

Note - The rewind() moves the file pointer at beginning of the file.

PHP Online Test


« Previous Tutorial Next Tutorial »