Cum să analizați un fișier CSV folosind PHP

Cum Sa Analizati Un Fisier Csv Folosind Php



CSV fișierele conțin valori separate prin virgulă și sunt formatul popular de gestionare a datelor, bine stabilit, utilizat pentru stocarea datelor în formă tabelară. Aceste fișiere pot fi create cu ușurință de MS Excel, OpenOffice și Google Sheets. Analizând CSV fișierul citește fișierul linie cu linie și separă liniile în valori matrice.

În acest ghid, vom explica cum puteți analiza a CSV fișier folosind PHP.







Analizați un fișier CSV folosind PHP

Metoda încorporată a PHP care analizează fișierul CSV este fgetcsv() și citește o linie din fișierul CSV și o parsează într-o matrice.



Sintaxa utilizării fgetcsv() funcția în PHP este următoarea:



fgetcsv (.csv” , lungime , ',' )

Această funcție acceptă trei parametri, numele fișierului, lungimea parametrului opțional al celei mai lungi linii și apoi un alt delimitator opțional de câmp de parametru. Delimitatorul implicit al câmpului este virgula cu ghilimele duble ca incintă.





Utilizați funcția fgetcsv() pentru a analiza un fișier CSV în PHP

Iată cum puteți utiliza fgetcsv() funcție pentru a analiza un fișier CSV în PHP:

Pasul 1 : Mai întâi, deschideți un fișier CSV folosind fopen() funcţie. Aici modul r este folosit pentru a deschide fișierul pentru citire și $mâner este mânerul pentru a păstra datele din fișier:



$mâner = fopen ( „filename.csv” , 'r' ) ;

Pasul 2 : După aceea, puteți folosi o buclă while pentru a analiza fiecare CSV rând separat, bucla va continua până la sfârșitul fișierului:

in timp ce ( ( $date = fgetcsv ( $mâner , 1000 , ',' ) ) !== FALS )

{

// Citiți datele fișierului CSV

}

Pasul 3 : Odată ce fișierul este citit, trebuie să-l închideți folosind funcția fclose() trecând handle ca singur argument.

fclose ( $mâner ) ;

Iată un cod complet în PHP care urmează pașii de mai sus și vă permite să deschideți fișierul CSV în modul doar citire, dacă fișierul este găsit, altfel va reveni fals :



$mâner = fopen ( „data.csv” , 'r' ) ;

in timp ce ( ( $rând = fgetcsv ( $mâner ) ) !== fals ) {

var_dump ( $rând ) ;

}

fclose ( $mâner ) ;

?>

Codul de mai sus deschide mai întâi fișierul ‘data.csv’ în modul de citire folosind funcția fopen() și atribuie mânerul fișierului variabilei $handle. După aceea, citește fiecare linie a fișierului folosind o buclă while și funcția fgetcsv(). Codul folosește comparația !== falsă pentru a asigura citirea până la sfârșitul fișierului.

Ieșire

Convertiți fișierul CSV în matrice multidimensională în PHP

De asemenea, puteți analiza a CSV fișier prin conversia acestuia într-o matrice multidimensională, astfel încât datele să fie citite cu ușurință în interiorul fișierului. Următorul cod vă va ajuta să extrageți datele din fișierul CSV într-un mod mai organizat.



$nume fișier = „data.csv” ;

$nested_array = [ ] ;

dacă ( ( $mâner = fopen ( ' {$filename} ' , 'r' ) ) !== FALS )

{

in timp ce ( ( $date = fgetcsv ( $mâner , 1000 , ',' ) ) !== FALS )
{
$nested_array [ ] = $date ;
}
fclose ( $mâner ) ;


}

ecou
  ; 

var_dump ( $nested_array ) ;

ecou
;

Pentru a face datele în format lizibil, codul de mai sus folosește funcția numită var_dump() care formatează și scoate datele într-o manieră structurată într-o pre-etichetă HTML.

Ieșire

Iată o altă modalitate de a deschide CSV fișier în PHP într-un mod mai personalizat. Codul de mai jos va afișa datele fiecărui rând. Mai întâi, am deschis fișierul folosind funcția fopen(). . Apoi utilizați mânerul pentru a plasa fiecare rând al fișierului în el și a folosit bucla while pentru a citi întregul CSV fișier până când indicatorul ajunge la sfârșitul fișierului. La final, închidem fișierul:



$rând = 1 ;

dacă ( ( $mâner = fopen ( „data.csv” , 'r' ) ) !== FALS ) {

in timp ce ( ( $date = fgetcsv ( $mâner , 1000 , ',' ) ) !== FALS ) {

$numere = numara ( $date ) ;

ecou

$numere câmpuri în linie $rând :

\n '
;

$rând ++;

pentru ( $c = 0 ; $c < $numere ; $c ++ ) {

ecou $date [ $c ] .
\n '
;

}

}

fclose ( $mâner ) ;

}

?>

Ieșire

Concluzie

În PHP , putem deschide fișierul folosind fopen() funcția, citiți fișierul linie cu linie folosind fgetcsv() funcția și închideți fișierul folosind fclose() funcţie. Acest proces poate fi repetat pentru fiecare linie din CSV fișier, permițându-vă să citiți și să manipulați cu ușurință datele tabulare în PHP.