Anders Genomgång 07 - 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('test1.txt',"Detta är en rad\n Nu blev det en ny rad\n",FILE_APPEND);
// Ta bort FILE_APPEND om man vill skriva över filen.
$fil = 'users.aml'; // Om man vill kan man lagra filnamnet i en variabel.
// Läser en textfil till en sträng.
$str = file_get_contents($fil);
echo nl2br($str); // Radbrytningar i strängen görs om till <br> med nl2br().
echo '<br>';
// Läser in en textfil till en array, radbrytning ger nytt element i arrayen.
// Varje rad i filen har följande format: am0087:Anders:Mosshäll
$arr = file('users.aml');
//print_r($arr); // Används bara för att testa under utveckling av programmet.
file_put_contents('namnfil.txt',""); // Töm filen (Spara en tom textsträng till filen)
$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 Andersson i efternamn.
if (trim($row[2]) == 'Andersson') { // 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');