Leggi o analizza file CSV in PHP
-
Usa
fread()
per leggere il file CSV in PHP -
Usa
readfile()
per leggere il file CSV in PHP -
Usa la funzione
str_getcsv()
per analizzare CSV in Python -
Usa la funzione
fgetcsv()
per analizzare CSV in Python
La gestione dei file è una componente essenziale di qualsiasi applicazione web. Questo tutorial introdurrà come leggere, scrivere e aggiungere file utilizzando la gestione dei file.
Usa fread()
per leggere il file CSV in PHP
È la funzione di base della lettura del file CSV in PHP. Legge il file e restituisce tutti i contenuti presenti nel file.
Vedi il codice di esempio.
<?php
$file = "text1.csv";
$openfile = fopen($file, "r");
$cont = fread($openfile, filesize($file));
echo $cont;
?>
Produzione:
aaa,bbb,ccc,dddd
123,456,789
"""aaa""","""bbb"""
fread()
richiede due parametri: il file da cui vogliamo leggere i dati e la dimensione del file che possiamo ottenere passando il file come parametro alla funzione filesize($file)
.
Usa readfile()
per leggere il file CSV in PHP
Questa funzione legge un file e salva i risultati nella memoria o nella cache. Apre il file e ne legge il contenuto. Accetta solo un parametro, che è il file.
<?php
echo readfile("text1.csv");
?>
Uscita:
aaa,bbb,ccc,dddd
123,456,789
"""aaa""","""bbb"""
49
La funzione fread()
legge solo il file e restituisce i dati nell’editor, ma la funzione readfile()
legge un file ma ne salva anche il risultato in memoria o nella cache.
Usa la funzione str_getcsv()
per analizzare CSV in Python
Questa funzione analizza una stringa in formato CSV e restituisce un array contenente i dati del file. Converte i dati da un file CSV in un array, ma prima di eseguirlo, dovresti aprire il file usando la funzione fopen()
, che accetta file e mode come parametri. Vedere il seguente esempio.
<?php
$handle = fopen("text1.csv", "r");
$lineNumber = 1;
while (($raw_string = fgets($handle)) !== false) {
$row = str_getcsv($raw_string);
var_dump($row);
$lineNumber++;
}
fclose($handle);
?>
Produzione:
array(4) {
[0]=>
string(3) "aaa"
[1]=>
string(3) "bbb"
[2]=>
string(3) "ccc"
[3]=>
string(4) "dddd"
}
array(3) {
[0]=>
string(3) "123"
[1]=>
string(3) "456"
[2]=>
string(3) "789"
}
array(2) {
[0]=>
string(5) ""aaa""
[1]=>
string(5) ""bbb""
}
Usa la funzione fgetcsv()
per analizzare CSV in Python
Ora useremo una funzione interessante chiamata fgetcsv()
per analizzare i dati da un file CSV. Per utilizzare questa funzione sono necessari i seguenti passaggi.
- Aprire il file per accedere ai dati del file da un file
- Utilizzare la funzione
fgetcsv()
all’interno di un bucle per analizzare separatamente ogni riga del file. - Chiudi il file
Vedi il codice di esempio.
<?php
$file = fopen('text1.csv', 'r');
while (($line = fgetcsv($file)) !== FALSE) {
echo '<pre>';
print_r($line);
echo '</pre>';
}
fclose($file);
?>
Produzione:
<pre>Array
(
[0] => aaa
[1] => bbb
[2] => ccc
[3] => dddd
)
</pre><pre>Array
(
[0] => 123
[1] => 456
[2] => 789
)
</pre><pre>Array
(
[0] => "aaa"
[1] => "bbb"
)
</pre>