Kako razčleniti datoteko CSV s PHP

Kako Razcleniti Datoteko Csv S Php



CSV datoteke vsebujejo vrednosti, ločene z vejicami, in so priljubljena, dobro uveljavljena oblika za obdelavo podatkov, ki se uporablja za shranjevanje podatkov v obliki tabele. Te datoteke je mogoče enostavno ustvariti z MS Excelom, OpenOfficeom in Google Preglednicami. Razčlenjevanje CSV datoteka bere datoteko vrstico za vrstico in ločuje vrstice v matrične vrednosti.

V tem priročniku vam bomo razložili, kako lahko razčlenite a CSV datoteko z uporabo PHP.







Razčlenite datoteko CSV s PHP

Vgrajena metoda PHP, ki razčleni datoteko CSV, je fgetcsv() in prebere vrstico iz datoteke CSV in jo razčleni v matriko.



Sintaksa uporabe fgetcsv() funkcija v PHP je naslednja:



fgetcsv ( ' .csv' , dolžina , ',' )

Ta funkcija sprejme trije parametri, ime datoteke, neobvezno dolžino parametra najdaljše vrstice in nato še eno neobvezno ločilo polja parametra. Privzeto ločilo polja je vejica z dvojnimi narekovaji kot ograjen prostor.





Uporabite funkcijo fgetcsv() za razčlenitev datoteke CSV v PHP

Tukaj je opisano, kako lahko uporabite fgetcsv() funkcija za razčlenitev datoteke CSV v PHP:

Korak 1 : Najprej odprite datoteko CSV z uporabo fopen() funkcijo. Tukaj način r se uporablja za odpiranje datoteke za branje in $handle je ročaj za shranjevanje podatkov iz datoteke:



$handle = fopen ( 'imedatoteke.csv' , 'r' ) ;

2. korak : Po tem lahko uporabite zanko while za razčlenitev vsakega CSV vrstica ločeno, se bo zanka nadaljevala do konca datoteke:

medtem ( ( $podatki = fgetcsv ( $handle , 1000 , ',' ) ) !== LAŽNO )

{

// Branje podatkov datoteke CSV

}

3. korak : Ko je datoteka prebrana, jo morate zapreti s funkcijo fclose() tako, da kot edini argument posredujete ročko.

fclose ( $handle ) ;

Tukaj je celotna koda v PHP, ki sledi zgornjim korakom in vam omogoča, da odprete datoteko CSV v načinu samo za branje, če je datoteka najdena, sicer se bo vrnila lažno :



$handle = fopen ( 'podatki.csv' , 'r' ) ;

medtem ( ( $vrstica = fgetcsv ( $handle ) ) !== lažno ) {

var_dump ( $vrstica ) ;

}

fclose ( $handle ) ;

?>

Zgornja koda najprej odpre datoteko »data.csv« v načinu branja s funkcijo fopen() in dodeli ročico datoteke spremenljivki $handle. Nato prebere vsako vrstico datoteke z uporabo zanke while in funkcije fgetcsv(). Koda uporablja primerjavo !== false, da zagotovi branje, dokler ni dosežen konec datoteke.

Izhod

Pretvorite datoteko CSV v večdimenzionalno matriko v PHP

Lahko tudi razčlenite a CSV datoteko tako, da jo pretvorite v večdimenzionalno matriko, tako da je podatke v datoteki enostavno brati. Naslednja koda vam bo pomagala ekstrahirati podatke iz datoteke CSV na bolj organiziran način.



$ime datoteke = 'data.csv' ;

$nested_array = [ ] ;

če ( ( $handle = fopen ( ' {$filename} ' , 'r' ) ) !== LAŽNO )

{

medtem ( ( $podatki = fgetcsv ( $handle , 1000 , ',' ) ) !== LAŽNO )
{
$nested_array [ ] = $podatki ;
}
fclose ( $handle ) ;


}

odmev '' ;

var_dump ( $nested_array ) ;

odmev '' ;

Za pretvorbo podatkov v berljivo obliko zgornja koda uporablja imenovano funkcijo var_dump() ki oblikuje in izpiše podatke na strukturiran način znotraj predoznake HTML.

Izhod

Tukaj je še en način za odpiranje CSV datoteko v PHP na bolj prilagojen način. Spodnja koda bo prikazala podatke vsake vrstice. Najprej smo odprli datoteko z uporabo funkcijo fopen(). . Nato uporabite ročaj, da vanjo postavite vsako vrstico datoteke, in uporabite zanko while, da preberete celotno CSV datoteke, dokler kazalec ne doseže konca datoteke. Na koncu zapremo datoteko:



$vrstica = 1 ;

če ( ( $handle = fopen ( 'podatki.csv' , 'r' ) ) !== LAŽNO ) {

medtem ( ( $podatki = fgetcsv ( $handle , 1000 , ',' ) ) !== LAŽNO ) {

$številke = štetje ( $podatki ) ;

odmev '

$številke polja v vrsti $vrstica :

\n '
;

$vrstica ++;

za ( $c = 0 ; $c < $številke ; $c ++ ) {

odmev $podatki [ $c ] . '
\n '
;

}

}

fclose ( $handle ) ;

}

?>

Izhod

Spodnja črta

notri PHP , lahko datoteko odpremo z uporabo fopen() preberite datoteko vrstico za vrstico z uporabo fgetcsv() funkcijo in zaprite datoteko z fclose() funkcijo. Ta postopek lahko ponovite za vsako vrstico v CSV datoteko, ki vam omogoča preprosto branje in obdelavo tabelarnih podatkov v PHP.