Alternativa para PHP_excel


132

¿Hay alguna alternativa para PHP_excel que pueda "Exportar a XLSX / XLS" en un formato personalizado?

Esta es una pregunta de referencia general para etiqueta


2
Dado que las preguntas frecuentes que solicitan bibliotecas que pueden leer / escribir archivos Excel se señalan regularmente a esta respuesta debido a la lista proporcionada ... y que la lista en cuestión se actualiza regularmente, no entiendo por qué debería haberse cerrado.
Mark Baker

1
No fui uno de los que cerraron, pero la razón en el cuadro "cerrado como fuera de tema" parece coincidir bastante conmigo. Ver también: por qué las preguntas de la lista de compras son malas . Me doy cuenta de que su respuesta es de alta calidad y está siendo actualizada, pero la pregunta en sí misma aún se encuentra en esa categoría fuera de tema.
IMSoP

14
Aunque la pregunta es técnicamente fuera de tema, este es el Q&A canónico sobre este tema y ofrece un valor significativo. Por favor, abstenerse de cerrarlo.
Gordon

Respuestas:


39

Escribí una clase muy simple para exportar a "Excel XML", también conocido como SpreadsheetML. No es tan conveniente para el usuario final como XSLX (dependiendo de la extensión del archivo y la versión de Excel, pueden recibir un mensaje de advertencia), pero es mucho más fácil trabajar con él que con XLS o XLSX.

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


1
Si lo escribiste, ¿compartirías bajo qué licencia lo ofreces? Tuve problemas para descifrarlo de su respuesta resp. de las fuentes que vinculó pero estaría interesado en obtener más información.
Hakre

@Eli: ¿Cómo podemos fusionar dos columnas en una fila en particular?
joHN

1
@Eli, ¿cómo crearía nuevas hojas usando su código?
ivanacorovic

¿Cómo generar y descargar archivos xlsx usando AJAX?
Guru

286

Para escribir Excel

  • PHP_Excel_Writer de PEAR (solo xls)
  • php_writeexcel de Bettina Attack (solo xls)
  • XLS File Generator comercial y solo xls
  • Excel Writer para PHP desde Sourceforge (solo hoja de cálculoML)
  • La extensión Excel de Ilia Alshanetsky ahora en github (xls y xlsx, y requiere libXL comercial componente )
  • Extensión COM de PHP (requiere un programa de hoja de cálculo habilitado para COM como MS Excel u OpenOffice Calc ejecutándose en el servidor)
  • La alternativa de Open Office a COM ( PUNO ) (requiere que Open Office esté instalado en el servidor con el soporte de Java habilitado)
  • PHP-Export-Data por Eli Dickinson (Escribe SpreadsheetML - el formato XML de Excel 2003 y CSV)
  • Php-excel de Oliver Schwarz (SpreadsheetML)
  • La versión original de Oliver Schwarz de php-excel (SpreadsheetML)
  • excel_xml (SpreadsheetML, a pesar de su nombre) ... enlace reportado como roto
  • El proyecto pequeño pero fuerte (tbs) incluye la herramienta OpenTBS para crear documentos OfficeOpenXML (formatos OpenDocument y OfficeOpenXML)
  • Reclamaciones de SimpleExcel para leer y escribir formatos XML / CSV / TSV / HTML / JSON / etc de Microsoft Excel
  • Hojas de cálculo KoolGrid xls solamente, pero también doc y pdf
  • PHP_XLSXWriter OfficeOpenXML
  • PHP_XLSXWriter_plus OfficeOpenXML, fork de PHP_XLSXWriter
  • php_writeexcel xls solamente (parece que está basado en PEAR SEW)
  • canalón OfficeOpenXML (xlsx) y CSV
  • Slamdunk / php-excel (solo xls) parece una versión actualizada del antiguo escritor PEAR Spreadsheet

Para leer Excel

Una nueva extensión de C ++ Excel para PHP, aunque tendrá que construirla usted mismo, y los documentos son bastante escasos cuando se trata de averiguar qué funcionalidad (ni siquiera puedo averiguar en el sitio qué formatos admite, o si lee o escribe o ambos ... Supongo que ambos) ofrece phpexcellib de SIMITGROUP.

Todos afirman ser más rápidos que PHPExcel de codeplex o de github , pero (con la excepción de COM, el envoltorio de PUNO Ilia alrededor de libXl y spout) no ofrecen lectura y escritura, ni xls y xlsx; puede que ya no sea compatible; y (aunque no he probado la extensión de Ilia) solo COM y PUNO ofrecen el mismo grado de control sobre el libro creado.


La extensión de Ilia ahora es compatible con XLS y XLSX.
Sara

66
@RZB: utiliza la biblioteca que funcione para usted, aunque MySQL no tiene (hasta donde yo sé) ninguna función de importación nativa para archivos .xls, solo para .csv con LOAD DATA INFILE. Como desarrollador de PHPExcel, ciertamente lo promoveré y lo recomendaré cuando sea apropiado, pero no impongo su uso cuando no es la opción más adecuada.
Mark Baker,

1
@velcrow un bonito motor ligero. Buena recomendación, necesita algo de trabajo, pero genera archivos XSLX de calidad
foochow

1
Gracias por tu precioso tiempo.
Zain

1
@ Mark, sería genial si pudieras hacer algo como$manyAnswers = split($libSeparator, $thisAnswer); // So we could vote and comment by lib
dap.tci el
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.