This is an old revision of the document!


Genomgång - Att läsa från och skriva till textfiler

<?php
/* 
 * Genomgång på hur man kan läsa och skriva till och från textfiler.
 * Dessa funktioner öppnar och stänger filerna automatiskt.
 * Funktioner som gås igenom för att läsa från textfiler:
 *  - file 
 *  - file_get_contents 
 * Funktion som gås igenom för att skriva till textfiler:
 *  - file_put_contents
 */
include 'head.php';
 
// Skriver till en textfil. Finns inte filen skapas den. FILE_APPEND gör att innehåll läggs till och inte skrivs över.
file_put_contents('lek1_file.txt',"Det var en liten pojke som var ute och gick...\n",FILE_APPEND);
 
$textfil = 'text.txt';  // Om man vill kan man lagra filnamnet i en variabel.
// Läser en textfil till en sträng. 
$str = file_get_contents($textfil);
echo nl2br($str) . '<br>';	// Radbrytningar i strängen görs om till <br> med nl2br().
 
// Läser in en textfil till en array, radbrytning ger ny "post".
// Varje rad i filen har följande format:  ds0087:David:Svensson
$arr = file('name.txt');
// print_r($arr);   // Används bara för att testa under utveckling av programmet.
 
$i=0;
while ($i < count($arr)) {
  $row = explode(':', $arr[$i]);
  // print_r($row);  // Används bara för att testa under utveckling av programmet.
  // Skriver bara ut de som heter Svensson i efternamn.
  if (trim($row[2]) == 'Svensson') {   // trim tar bort radbrytning.
    $temp =  'Användarnamn: ' . $row[0] . ' Förnamn: '. $row[1] . ' Efternamn: ' . trim($row[2]);
    file_put_contents('namnfil.txt',$temp."\n",FILE_APPEND);  // "\n" ger radbrytning i filen. OBS! Använd " ".
  }
  $i++;
}
 
include 'foot.php';