Maison  >  Article  >  développement back-end  >  Comment lire des données Excel en PHP et les convertir dans un format spécifié

Comment lire des données Excel en PHP et les convertir dans un format spécifié

PHPz
PHPzoriginal
2023-03-28 11:28:121633parcourir

Les fichiers Excel sont un format de source de données très répandu et courant dans le développement d'applications Web. Cependant, le format des données du fichier Excel peut ne pas être compatible avec notre application cible. Par conséquent, nous avons besoin d’une méthode pour convertir les données Excel dans le format de données dont nous avons besoin. Cet article explique comment importer des fichiers Excel en PHP et convertir le format des données.

Étape 1 : Installez la bibliothèque PHPExcel

PHPExcel est une bibliothèque PHP permettant de lire et d'écrire des fichiers Excel. Nous pouvons installer cette bibliothèque en utilisant Composer. Entrez la commande suivante dans le terminal :

composer require phpoffice/phpexcel

Cela téléchargera et installera la bibliothèque PHPExcel et ses dépendances.

Deuxième étape : Écrire le code

Dans cette étape, nous allons écrire le code PHP pour lire le fichier Excel et le convertir dans le format de données dont nous avons besoin. Le code suivant montre comment lire un fichier Excel via PHPExcel et le convertir en tableau :

<?php
require_once &#39;vendor/autoload.php&#39;;

$inputFileType = &#39;Excel5&#39;; //xls格式
$inputFileName = &#39;example.xls&#39;;
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($inputFileName);

$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); 

print_r($sheetData);
?>

Dans l'exemple ci-dessus, nous spécifions d'abord le type et le nom du fichier Excel à lire. Ensuite, nous créons un objet lecteur PHPExcel et utilisons sa méthode load() pour ouvrir le fichier Excel. Enfin, nous utilisons la méthode toarray() de l'objet PHPExcel pour convertir les données Excel en tableau et imprimer le tableau.

Maintenant, nous avons converti les données Excel en tableau. Cependant, notre application cible peut nécessiter un format de données différent, nous devons donc effectuer d'autres conversions de format sur ce tableau.

Voici un exemple de code pour convertir des données Excel au format JSON :

<?php
require_once &#39;vendor/autoload.php&#39;;

$inputFileType = &#39;Excel5&#39;; //xls格式
$inputFileName = &#39;example.xls&#39;;
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($inputFileName);

$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); 

$jsonData = json_encode($sheetData);

echo $jsonData;
?>

Dans l'exemple ci-dessus, nous utilisons la fonction json_encode() de PHP pour convertir le tableau Excel au format JSON et l'imprimer.

Troisième étape : validation et conversion des données

Dans la deuxième étape, nous avons converti les données Excel dans le format dont nous avons besoin, mais nous devons également valider et convertir les données. Par exemple, nous pouvons convertir datetime au format d'heure standard, convertir une chaîne numérique en type numérique, etc.

Voici un exemple simple de conversion de format datetime :

<?php
require_once &#39;vendor/autoload.php&#39;;

$inputFileType = &#39;Excel5&#39;; //xls格式
$inputFileName = &#39;example.xls&#39;;
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($inputFileName);

$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); 

foreach($sheetData as $key => $row) {
    if($key > 1) {
        $sheetData[$key][3] = strtotime($row[3]);
    }
}

$jsonData = json_encode($sheetData);

echo $jsonData;
?>

Dans l'exemple ci-dessus, nous parcourons chaque ligne du tableau et convertissons la datetime de la colonne 4 au format d'horodatage Unix.

Conclusion

En utilisant la bibliothèque PHPExcel, nous pouvons facilement importer des données Excel dans une application PHP et les convertir au format dont nous avons besoin. Cependant, avant d'effectuer une conversion de format, nous devons examiner attentivement les questions de validation et de conversion des données pour garantir l'exactitude et la cohérence des données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn