Comment analyser un fichier CSV à l'aide de PHP

Comment Analyser Un Fichier Csv A L Aide De Php



CSV Les fichiers contiennent des valeurs séparées par des virgules et sont le format de traitement de données populaire et bien établi utilisé pour stocker les données sous forme de tableau. Ces fichiers peuvent être facilement créés par MS Excel, OpenOffice et Google Sheets. Analyser le CSV file lit le fichier ligne par ligne et sépare les lignes en valeurs de tableau.

Dans ce guide, nous expliquerons comment vous pouvez analyser un CSV fichier en utilisant PHP.







Analyser un fichier CSV à l'aide de PHP

La méthode intégrée de PHP qui analyse le fichier CSV est fgetcsv() et il lit une ligne du fichier CSV et l'analyse dans un tableau.



La syntaxe d'utilisation de fgetcsv() fonction en PHP est la suivante :



fgetcsv ( '.csv' , longueur , ',' )

Cette fonction accepte trois paramètres, le nom du fichier, la longueur du paramètre facultatif de la ligne la plus longue, puis un autre délimiteur de champ de paramètre facultatif. Le délimiteur de champ par défaut est la virgule entourée de guillemets doubles.





Utiliser la fonction fgetcsv() pour analyser un fichier CSV en PHP

Voici comment vous pouvez utiliser le fgetcsv() fonction pour parser un fichier CSV en PHP :

Étape 1 : Tout d'abord, ouvrez un fichier CSV à l'aide de fopen() fonction. Ici mode r est utilisé pour ouvrir le fichier en lecture et $ poignée est le handle pour contenir les données du fichier :



$ poignée = ouvrir ( 'nomfichier.csv' , 'r' ) ;

Étape 2 : Après cela, vous pouvez utiliser une boucle while pour analyser chaque CSV ligne séparément, la boucle continuera jusqu'à la fin du fichier :

alors que ( ( $données = fgetcsv ( $ poignée , 1000 , ',' ) ) !== FAUX )

{

// Lire les données du fichier CSV

}

Étape 3 : Une fois le fichier lu, vous devez le fermer à l'aide de la fonction fclose() en passant handle comme seul argument.

fermer ( $ poignée ) ;

Voici un code complet en PHP qui suit les étapes ci-dessus et vous permet d'ouvrir le fichier CSV en mode lecture seule, si le fichier est trouvé, sinon il reviendra FAUX :



$ poignée = ouvrir ( 'données.csv' , 'r' ) ;

alors que ( ( $ligne = fgetcsv ( $ poignée ) ) !== FAUX ) {

var_dump ( $ligne ) ;

}

fermer ( $ poignée ) ;

?>

Le code ci-dessus ouvre d'abord le fichier 'data.csv' en mode lecture à l'aide de la fonction fopen() et attribue le descripteur de fichier à la variable $handle. Après cela, il lit chaque ligne du fichier en utilisant une boucle while et la fonction fgetcsv(). Le code utilise la comparaison !== false pour garantir la lecture jusqu'à la fin du fichier.

Sortir

Convertir un fichier CSV en tableau multidimensionnel en PHP

Vous pouvez également analyser un CSV fichier en le convertissant en un tableau multidimensionnel afin que les données soient lues facilement à l'intérieur du fichier. Le code suivant vous aidera à extraire les données du fichier CSV de manière plus organisée.



$nomfichier = 'données.csv' ;

$tableau_imbriqué = [ ] ;

si ( ( $ poignée = ouvrir ( ' {$filename} ' , 'r' ) ) !== FAUX )

{

alors que ( ( $données = fgetcsv ( $ poignée , 1000 , ',' ) ) !== FAUX )
{
$tableau_imbriqué [ ] = $données ;
}
fermer ( $ poignée ) ;


}

écho '' ;

var_dump ( $tableau_imbriqué ) ;

écho '' ;

Pour rendre les données dans un format lisible, le code ci-dessus utilise la fonction appelée var_dump() qui formate et génère les données de manière structurée dans une balise HTML pre.

Sortir

Voici une autre façon d'ouvrir le CSV fichier en PHP de manière plus personnalisée. Le code ci-dessous affichera les données de chaque ligne. Tout d'abord, nous avons ouvert le fichier en utilisant le fonction fopen() . Ensuite, utilisez la poignée pour y placer chaque ligne du fichier et utilisez la boucle while pour lire l'intégralité du fichier. CSV fichier jusqu'à ce que le pointeur atteigne la fin du fichier. A la fin, on ferme le fichier :



$ligne = 1 ;

si ( ( $ poignée = ouvrir ( 'données.csv' , 'r' ) ) !== FAUX ) {

alors que ( ( $données = fgetcsv ( $ poignée , 1000 , ',' ) ) !== FAUX ) {

$nombres = compter ( $données ) ;

écho '

$nombres champs en ligne $ligne :

\n '
;

$ligne ++ ;

pour ( $c = 0 ; $c < $nombres ; $c ++ ) {

écho $données [ $c ] . '
\n '
;

}

}

fermer ( $ poignée ) ;

}

?>

Sortir

Conclusion

Dans PHP , nous pouvons ouvrir le fichier en utilisant le fopen() fonction, lisez le fichier ligne par ligne à l'aide de la fgetcsv() fonction, et fermez le fichier en utilisant la fermer() fonction. Ce processus peut être répété pour chaque ligne du CSV fichier, vous permettant de lire et de manipuler facilement des données tabulaires en PHP.