Differences

This shows you the differences between two versions of the page.

Link to this comparison view

amprog_07 [2017-09-01 14:54] (current)
Line 1: Line 1:
 +====== Anders Genomgång 07 - Att läsa från och skriva till textfiler ======
 +
 +<php>
 +/*
 +Tutorial:\\
 +[[http://​www.youtube.com/​watch?​v=19mlI-F2xrY|Läsa från och skriva till textfiler]]\\
 +[[http://​www.youtube.com/​watch?​v=Rq7G5FtrsC0|Explode och implode]]\\
 +*/
 +</​php>​
 +
 +<code php>
 +<?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'​);​
 +</​code>​