2010-10-14 7 views
113

Existe-t-il une alternative pour PHP_excel qui peut exporter le fichier XLSX/XLS dans un format personnalisé?Alternative pour PHP_excel

C'est une General Reference question pour le tag

+2

Étant donné que les questions fréquemment demandant des bibliothèques qui peuvent lire/écrire des fichiers Excel sont régulièrement souligné cette réponse en raison de la liste fournie ... et que la liste en question est régulièrement mise à jour, je ne apprécier pourquoi il aurait dû être fermé. –

+1

Je n'étais pas l'un des fermiers, mais la raison dans la boîte "fermé comme hors-sujet" semble correspondre assez étroitement à moi. Voir aussi: [pourquoi les questions sur la liste d'achats sont mauvaises] (http://meta.stackexchange.com/q/158809). Je sais que * votre réponse * est de haute qualité et mise à jour, mais la question elle-même relève toujours de cette catégorie hors-sujet. – IMSoP

+13

** Bien que la question soit techniquement hors-sujet, c'est la question-réponse canonique sur ce sujet et offre une valeur significative. Merci de ne pas le fermer.** – Gordon

Répondre

35

J'ai écrit une classe très simple pour l'exportation vers "Excel XML" alias SpreadsheetML. Ce n'est pas aussi pratique pour l'utilisateur final que XSLX (en fonction de l'extension du fichier et de la version Excel, ils peuvent recevoir un message d'avertissement), mais il est beaucoup plus facile de travailler avec XLS ou XLSX.

http://github.com/elidickinson/php-export-data

+1

Si vous l'écrivez, souhaitez-vous partager en vertu de quelle licence vous l'offrez? J'ai eu des problèmes pour le déchiffrer à partir de votre réponse resp. à partir des sources que vous avez liées mais serait intéressé d'en savoir plus. – hakre

+1

@hakre C'est MIT sous licence: http://opensource.org/licenses/mit-license.php – Eli

+0

@Eli: Comment pouvons-nous fusionner deux colonnes à une ligne particulière? – joHN

263

pour l'écriture Excel

  • PHP_Excel_Writer de PEAR (xls seulement)
  • php_writeexcel de Bettina Attaque (xls seulement)
  • XLS File Generator commercial et xls ne
  • Excel Writer for PHP de Sourceforge (SpreadsheetML seulement)
  • Ilia Alshanetsky de Excel extension maintenant github (xls et xlsx, et nécessite le composant libXL commercial)
  • (nécessite PHP de COM extension un programme tableur COM est activé tels que MS Excel ou OpenOffice Calc en cours d'exécution sur le serveur)
  • l'alternative Open office COM (PUNO) (nécessite Open office installé sur le serveur avec le support Java activé)
  • PHP-Export-Data par Eli Dickinson (Ecrit SpreadsheetML - le format XML Excel 2003 et CSV)
  • Oliver Schwarz de php-excel (SpreadsheetML)
  • version originale Oliver Schwarz php-excel (SpreadsheetML)
  • excel_xml (SpreadsheetML, malgré son nom). .. lien comme cassés
  • le tout petit projet, mais forte (tbs) comprend l'outil OpenTBS pour créer des documents OfficeOpenXML (formats OpenDocument et OfficeOpenXML)
  • SimpleExcel revendications pour lire et écrire XML Microsoft Excel/CSV/TSV/HTM L/JSON/etc formats
  • KoolGrid feuilles de calcul xls seulement, mais aussi doc et pdf
  • PHP_XLSXWriter OfficeOpenXML
  • PHP_XLSXWriter_plus OfficeOpenXML, fourche PHP_XLSXWriter
  • php_writeexcel xls seulement (qui ressemble à elle est basée sur PEAR OVE)
  • spout OfficeOpenXML (xlsx) et CSV
  • Slamdunk/php-excel (xls seulement) ressemble à une version mise à jour de l'ancien PEAR Tableur Writer

pour la lecture Excel

Un nouveau C++ Excel extension pour PHP, bien que vous ayez besoin de la construire vous-même, et les docs sont assez rares quand il s'agit d'essayer de trouver quelle fonctionnalité (je ne peux même pas trouver sur le site quels formats il supporte, ou s'il lit ou écrit ou les deux .... Je devine les deux) il offre phpexcellib de SIMITGROUP.

Tous prétendent être plus rapide que PHPExcel de codeplex ou de github, mais (à l'exception de COM, l'enveloppe de PUNO Élide autour LibXL et le bec), ils ne proposent pas la lecture et l'écriture, ou les deux xls et xlsx; peut ne plus être pris en charge; et (bien que je n'ai pas testé l'extension d'Ilia), seuls COM et PUNO offrent le même degré de contrôle sur le classeur créé.

+0

[L'extension d'Ilia] (https://github.com/iliaal/php_excel) prend désormais en charge XLS et XLSX. – Sara

+0

@Sara - merci, c'est utile de savoir –

+0

Notez, cependant, que l'extension de Iliaal nécessite LibXL qui est une bibliothèque commerciale assez coûteuse. – pilsetnieks