Maison >développement back-end >tutoriel php >Résumé des méthodes opérationnelles courantes pour le traitement des fichiers de table CSV avec PHP
Pour utiliser la fonction d'édition de tableaux Excel en ligne, l'analyse du format de fichier xls d'Excel est un problème. Après tout, il s'agit d'un format de brevet privé de Microsoft Office
Donc, si vous voulez le faire, vous devez l'utiliser. le format universel csv (Comma Separated Value, valeurs séparées par des virgules).
Divers logiciels bureautiques peuvent reconnaître les tableaux csv, qui sont en fait des tableaux avec des cellules séparées par des délimiteurs spécifiques (comme des virgules).
Prenons PHP comme exemple, fgetcsv lit la table csv et renvoie un tableau,
puis foreach le génère sous forme de f5d188ed2c074f8b944552db028f98a1 HTML. Cette étape peut être réalisée avec seulement quelques lignes de code
La charge de travail est principalement. réside dans l'interface du navigateur. Il est recommandé d'utiliser jQuery pour les opérations DOM et AJAX,
Il n'est pas difficile de réaliser une édition fine de cellule par double-clic comme phpMyAdmin, puis de la soumettre via AJAX Ou vous pouvez écrire le formulaire entier en une seule fois $("form").serialize(); puis le soumettre via AJAX .
1. contenu de chaque ligne avec des virgules.
2 Si le contenu de la cellule elle-même a une virgule, le contenu de cette cellule Il sera inclus entre guillemets
Si le contenu de la cellule elle-même a des guillemets. marques :
(1) Le guillemet n'est ni au début ni à la fin, le contenu de la cellule ne sera pas inclus entre guillemets
(2) Le guillemet est au premier ou à la fin, le contenu de cette cellule. sera inclus entre guillemets, et les premier et dernier guillemets d'origine seront échappés
<?php header('Content-Type: text/plain; charset=utf-8'); //导出CSV表格:数组转CSV $arr = array ( array('ab', 'cd'), array('"a,b"', '"c,d"'), ); $fp = fopen('file.csv', 'w'); foreach ($arr as $row) { //将一行格式化为CSV并写入文件指针 fputcsv($fp, $row); } fclose($fp); unset($arr); //导入CSV表格:CSV转数组 $fp = fopen('file.csv', 'r'); while ( ($row = fgetcsv($fp)) !== FALSE ) { //从文件指针中读入一行并解析CSV $arr[] = $row; } fclose($fp); var_export($arr);Enregistrer dans un fichier séparé
télécharger .php :
<?php $list = array ( 'aaa,bbb,ccc,dddd', '123,456,789', '"aaa","bbb"' ); session_start(); $_SESSION['outputArray']=$list; ?> <a href="test.php" target="_blank">下载csv文件</a>test.php :
<?php session_start(); $outputArray=$_SESSION['outputArray']; header('Content-Type: application/csv'); header('Content-Disposition: attachment;filename="sales.csv"'); $output=fopen('php://output','w') or die("can not open"); foreach ($outputArray as $line) { fputcsv($output, split(',', $line)); } fclose($output) or die("can not close"); ?>Enregistrer automatiquement le fichier CSV à l'emplacement spécifié
<?php $list = array ( 'aaa,bbb,ccc,dddd', '123,456,789', '"aaa","bbb"' ); $fp = fopen('file.csv', 'w'); foreach ($list as $line) { fputcsv($fp, split(',', $line)); } fclose($fp); ?>Utilisations plus courantes pour le traitement PHP des fichiers de table CSV S'il vous plaît faites attention au site Web PHP chinois pour les articles connexes résumant les méthodes de fonctionnement !