2010-11-05 42 views
29

ho un file di testo con le informazioni in mio server:Leggere un file di testo con php

Data1 
Data2 
Data3 
. 
. 
. 
DataN 

Come faccio a leggere tutte le informazioni dal file di testo (riga per riga) con PHP?

risposta

61
<?php 

$fh = fopen('filename.txt','r'); 
while ($line = fgets($fh)) { 
    // <... Do your work with the line ...> 
    // echo($line); 
} 
fclose($fh); 
?> 

Questo vi darà una riga per riga leggere .. leggere le note al php.net/fgets relative alla fine di problemi di linea con i Mac.

4

W3Schools è tuo amico: http://www.w3schools.com/php/func_filesystem_fgets.asp

E qui: http://php.net/manual/en/function.fopen.php ha più informazioni fopen compreso quello che le modalità sono.

Cosa W3Schools dice:

<?php 
$file = fopen("test.txt","r"); 

while(! feof($file)) 
    { 
    echo fgets($file). "<br />"; 
    } 

fclose($file); 
?> 

fopen apre il file (in questo caso test.txt con la modalità 'r' che significa di sola lettura e posiziona il puntatore all'inizio del file)

Il ciclo while verifica se è alla fine del file (feof) e mentre non lo è chiama fgets che ottiene la riga corrente in cui si trova il puntatore.

Continua così fino alla fine del file, quindi chiude il file.

7

È possibile anche produrre array utilizzando il file:

$array = file('/path/to/text.txt'); 
6
$filename = "fille.txt"; 
$fp = fopen($filename, "r"); 

$content = fread($fp, filesize($filename)); 
$lines = explode("\n", $content); 
fclose($fp); 
print_r($lines); 

In questo codice contenuto completo del file viene copiato alla variabile $content e poi dividerlo in un array con ogni carattere di nuova riga nel file.

8

Questo sta lavorando per me

$array = explode("\n", file_get_contents('file.txt')); 
2

provare qualcosa di simile:

$filename = 'file.txt'; 

$data = file($filename); 
foreach ($data as $line_num=>$line) 
{ 
    echo 'Line # <b>'.$line_num.'</b>:'.$line.'<br/>'; 
} 
1
$file="./doc.txt"; 
$doc=file_get_contents($file); 

$line=explode("\n",$doc); 
foreach($line as $newline){ 
    echo '<h3 style="color:#453288">'.$newline.'</h3><br>'; 

} 
Problemi correlati