Voici une ventilation de la façon de lire les données à partir de fichiers Excel à l'aide de la classe de lecture de feuille de calcul PHP, ainsi que les meilleures pratiques et exemples:
1. Installation
La classe «Reader» de la feuille de calcul n'est pas une partie centrale de PHP. Vous devrez l'installer à l'aide du compositeur:
`` `bash
Le compositeur a besoin de PHPOffice / PHPEXCEL
`` '
2. Exemple de code
`` `PHP
Php
require_once 'vendeur / autoload.php';
Utilisez phpoffice \ phpspreadsheet \ iofactory;
// le chemin du fichier vers votre fichier Excel
$ exvelfile ='path / to / your / file.xlsx';
// Chargez le fichier Excel
$ Spreadsheet =iofactory ::Load ($ exvelfile);
// Obtenez la feuille de calcul active
$ sheet =$ Spreadsheet-> getActiveSheet ();
// Obtenez les numéros de ligne et de colonne les plus élevés
$ highstrow =$ sheet-> getHighestrow ();
$ HighestColumn =$ Sheet-> GETHIGHESTCOLUMM ();
// boucle sur chaque ligne
pour ($ row =1; $ row <=$ highestrow; $ row ++) {
// Boucle dans chaque colonne
pour ($ col ='a'; $ col <=$ HighestColumn; $ col ++) {
// Obtenez la valeur cellulaire
$ cellValue =$ sheet-> getCell ($ col. $ row) -> getValue ();
// traite les données - imprimez-les comme exemple
echo "row:{$ row}, colonne:{$ col}, valeur:{$ cellvalue} \ n";
}
}
?>
`` '
Explication
* `require_once 'vendor / autoload.php';` :Cette ligne comprend le compositeur Autoloader, ce qui rend les classes de lecture de feuille de calcul disponibles dans votre code.
* `Utilisez phpoffice \ phpspreadsheet \ iofactory;` :Cette ligne importe la classe `iofactory`, que nous utiliserons pour charger le fichier Excel.
* `$ exfelfile ='path / to / your / file.xlsx';` :Remplacez ceci par le chemin d'accès réel vers votre fichier Excel.
* `$ Spreadsheet =iofactory ::Load ($ exfelfile);` :Charge le fichier Excel à l'aide de la `iofactory».
* `$ sheet =$ Spreadsheet-> getActiveSheet ();` :Obtient la feuille de calcul active dans le fichier Excel.
* `$ highstrow =$ sheet-> gethestrow ();` :Trouve le numéro de ligne le plus élevé avec les données de la feuille de calcul.
* `$ HighestColumn =$ Sheet-> GETHIGHESTCOLUMM ();` :Trouve la lettre de colonne la plus élevée avec des données dans la feuille de calcul.
* `$ CellValue =$ sheet-> getcell ($ col. $ row) -> getValue ();` :Récupère la valeur de la cellule spécifiée en utilisant sa lettre de colonne et son numéro de ligne.
Considérations importantes:
* Types de fichiers Excel: La bibliothèque `phpoffice / phpspreadsheet` prend en charge divers formats de fichiers Excel, y compris` .xls`, `.xlsx` et` .ods`.
* Gestion des erreurs: Incluez toujours la gestion des erreurs pour gérer gracieusement des cas comme des chemins de fichier non valides ou des fichiers Excel corrompus.
* Types de données: Sachez que les données dans les cellules Excel peuvent être dans différents types (chaînes, chiffres, dates, etc.). Utilisez `GetFormatTedValue ()` Si vous avez besoin d'obtenir des données dans son format d'affichage Excel formaté.
* Performance: Pour les grands fichiers Excel, envisagez d'utiliser des techniques comme itérer sur des gammes spécifiques de lignes ou de colonnes au lieu d'itérer sur toute la feuille.
Exemple:lire une plage spécifique
`` `PHP
// Obtenez des données à partir d'une plage spécifique (par exemple, les cellules A1 à C10)
$ rangedata =$ sheet-> rangetoArray ('a1:c10');
// imprime les données de la gamme
print_r ($ rangedata);
`` '
Faites-moi savoir si vous avez des exigences ou des scénarios spécifiques avec lesquels vous souhaitez travailler.
|