Alternativa per PHP_excel


132

Esiste un'alternativa per PHP_excel che può file "Esporta in XLSX / XLS" in un formato personalizzato?

Questa è una domanda di riferimento generale per il etichetta


2
Dato che le frequenti domande che richiedono librerie in grado di leggere / scrivere file Excel vengono regolarmente indirizzate a questa risposta a causa dell'elenco fornito ... e che l'elenco in questione viene aggiornato regolarmente, non riesco a capire perché dovrebbe essere stato chiuso.
Mark Baker,

1
Non ero uno dei chiuditori, ma la ragione nel riquadro "chiuso come fuori tema" sembra corrispondere abbastanza da vicino a me. Vedi anche: perché le domande della lista della spesa sono sbagliate . Mi rendo conto che la tua risposta è di alta qualità e in fase di aggiornamento, ma la domanda stessa rientra ancora in quella categoria off-topic.
IMSoP,

14
Sebbene la domanda sia tecnicamente fuori tema, si tratta di domande e risposte canoniche su questo argomento e offre un valore significativo. Si prega di astenersi dal chiuderlo.
Gordon,

Risposte:


39

Ho scritto una classe molto semplice per esportare in "Excel XML" aka SpreadsheetML. Per l'utente finale non è conveniente come XSLX (a seconda dell'estensione del file e della versione di Excel, potrebbero ricevere un messaggio di avviso), ma è molto più facile lavorare con XLS o XLSX.

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


1
Se lo scrivessi, condivideresti con quale licenza lo offri? Ho avuto problemi a decifrarlo dalla tua risposta resp. dalle fonti che hai collegato ma sarebbe interessato a saperne di più.
Hacre,

@Eli: come possiamo unire due colonne in una riga particolare?
john,

1
@Eli, come creerei nuovi fogli usando il tuo codice?
Ivanacorovic,

Come generare e scaricare file xlsx utilizzando AJAX?
Guru,

286

Per scrivere Excel

  • PHAR_Excel_Writer di PEAR (solo xls)
  • php_writeexcel da Bettina Attack (solo xls)
  • Solo XLS File Generator commerciale e xls
  • Excel Writer per PHP da Sourceforge (solo spreadsheetML)
  • L' estensione Excel di Ilia Alshanetsky ora su github (xls e xlsx e richiede un componente commerciale libXL )
  • Estensione COM di PHP (richiede un programma per fogli di calcolo abilitato COM come MS Excel o OpenOffice Calc in esecuzione sul server)
  • L'alternativa Open Office a COM ( PUNO ) (richiede Open Office installato sul server con supporto Java abilitato)
  • PHP-Export-Data di Eli Dickinson (scrive SpreadsheetML - il formato XML di Excel 2003 e CSV)
  • Php-excel di Oliver Schwarz (SpreadsheetML)
  • La versione originale di Oliver Schwarz di php-excel (SpreadsheetML)
  • excel_xml (SpreadsheetML, nonostante il nome) ... link segnalato come non funzionante
  • Il progetto piccolo ma potente (tbs) include lo strumento OpenTBS per la creazione di documenti OfficeOpenXML (formati OpenDocument e OfficeOpenXML)
  • SimpleExcel Reclama di leggere e scrivere i formati XML / CSV / TSV / HTML / JSON / etc di Microsoft Excel
  • Solo fogli di calcolo di KoolGrid xls, ma anche doc e pdf
  • PHP_XLSXWriter OfficeOpenXML
  • PHP_XLSXWriter_plus OfficeOpenXML, fork di PHP_XLSXWriter
  • solo php_writeexcel xls (sembra basato su PEAR SEW)
  • beccuccio OfficeOpenXML (xlsx) e CSV
  • Slamdunk / php-excel (solo xls) sembra una versione aggiornata del vecchio PEAR Spreadsheet Writer

Per leggere Excel

Una nuova estensione C ++ Excel per PHP, anche se dovrai crearla tu stesso, e i documenti sono piuttosto scarsi quando si tratta di provare a scoprire quale funzionalità (non riesco nemmeno a scoprire dal sito quali formati supporta, o se legge o scrive o entrambi ... suppongo entrambi) che offre è phpexcellib di SIMITGROUP.

Tutti affermano di essere più veloci di PHPExcel da codeplex o da github , ma (ad eccezione di COM, il wrapper di PUNO Ilia su libXl e spout) non offrono sia lettura che scrittura, né xls e xlsx; potrebbe non essere più supportato; e (anche se non ho testato l'estensione di Ilia) solo COM e PUNO offrono lo stesso grado di controllo sulla cartella di lavoro creata.


L'estensione di Ilia ora supporta XLS e XLSX.
Sara,

6
@RZB - Utilizzi qualunque libreria funzioni per te, anche se MySQL (per quanto ne so) non ha alcuna funzione di importazione nativa per i file .xls, solo per .csv che utilizza LOAD DATA INFILE. Come sviluppatore di PHPExcel, lo promuoverò sicuramente e lo consiglierò laddove appropriato, ma non ne faccio valere l'uso quando non è l'opzione più appropriata.
Mark Baker,

1
@velcrow un bel motore leggero. Buona raccomandazione, ha bisogno di qualche lavoro, ma i file XSLX qualità uscite
Foochow

1
grazie per il tuo prezioso tempo.
Zain

1
@Mark, Sarebbe bello se potessi fare qualcosa del genere$manyAnswers = split($libSeparator, $thisAnswer); // So we could vote and comment by lib
dap.tci
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.