Альтернатива для PHP_excel


132

Чи є альтернатива для PHP_excel, яка може "експортувати в XLSX / XLS" файл у спеціалізованому форматі?

Це загальне довідкове запитання для тег


2
Зважаючи на те, що на запитання, які часто задаються бібліотекам, які можуть читати / записувати файли Excel, регулярно вказують на цю відповідь із-за наданого списку ... та що список, про який йде мова, регулярно оновлюється, я не розумію, чому його слід було закрити.
Марк Бейкер

1
Я не був одним із близьких людей, але причина у вікні "закрито як поза темою", здається, дуже відповідає мені. Дивіться інші: чому питання списку покупок погані . Я усвідомлюю, що ваша відповідь є якісною та оновлюється, але саме питання все ще потрапляє в цю поза тематичну категорію.
IMSoP

14
Хоча питання технічно не є темою, це канонічне запитання щодо цієї теми і пропонує значну цінність. Утримайтеся від його закриття.
Гордон

Відповіді:


39

Я написав дуже простий клас для експорту в "Excel XML" aka SpreadsheetML. Кінцевому користувачеві це не так зручно, як XSLX (залежно від розширення файлу та версії Excel, вони можуть отримати попереджувальне повідомлення), але працювати з цим набагато простіше, ніж з XLS або XLSX.

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


1
Якби ви це написали, поділитесь, за якою ліцензією ви пропонуєте це? У мене виникли проблеми з розшифровкою з вашої відповіді, відповідно. з джерел, які ви пов’язали, але хотіли б дізнатися більше.
хакре

@Eli: Як ми можемо об'єднати два стовпці в певному рядку?
joNN

1
@Eli, як би я створив нові аркуші за допомогою вашого коду?
ivanacorovic

Як генерувати та завантажувати xlsx файл за допомогою AJAX?
Гуру

286

Для написання Excel

  • PHP_Excel_Writer PEAR (лише xls)
  • php_writeexcel з Bettina Attack (лише xls)
  • Генератор файлів XLS комерційний та лише xls
  • Excel Writer для PHP від Sourceforge (лише таблицяML)
  • Розширення Excel Іллі Альшанецького тепер на github (xls та xlsx, і потрібен комерційний компонент libXL )
  • Розширення PHP COM (потрібна програма з електронними таблицями, що підтримується COM, наприклад MS Excel або OpenOffice Calc, що працює на сервері)
  • Альтернатива Open Office COM ( PUNO ) (вимагає встановлення Open Office на сервері з підтримкою Java)
  • PHP-Export-Data від Елі Дікінсона (Writes SpreadsheetML - формат XML Excel 2003 та CSV)
  • Php-excel Олівера Шварца (SpreadsheetML)
  • Оригінальна версія Олівера Шварца php-excel (SpreadsheetML)
  • excel_xml (SpreadsheetML, незважаючи на свою назву) ... посилання повідомляється про розрив
  • Крихітний, але сильний (tbs) проект включає інструмент OpenTBS для створення документів OfficeOpenXML (формати OpenDocument і OfficeOpenXML)
  • SimpleExcel Претензії на читання та запис форматів Microsoft Excel XML / CSV / TSV / HTML / JSON / тощо
  • KoolGrid xls використовує лише електронні таблиці, але також doc та pdf
  • PHP_XLSXWriter OfficeOpenXML
  • PHP_XLSXWriter_plus OfficeOpenXML, вилка PHP_XLSXWriter
  • php_writeexcel xls (схоже, це засновано на PEAR SEW)
  • носик OfficeOpenXML (xlsx) та CSV
  • Slamdunk / php-excel (лише xls) виглядає як оновлена ​​версія старого запису електронних таблиць PEAR

Для читання Excel

Нове розширення C ++ Excel для PHP, хоча вам потрібно буде створити його самостійно, і документи досить рідкісні, коли справа доходить до спроб дізнатися, яку функціональність (я навіть не можу дізнатися з сайту, які формати підтримує, або чи читає він, або пише, або і те й інше .... я здогадуюсь і те і інше), що пропонує - phpexcellib від SIMITGROUP

Всі стверджують, що швидше , ніж PHPExcel від CodePlex або GitHub , але (за винятком COM, обгортка Пуно Іллі навколо LibXL і носиком) , вони не пропонують читання і запис, або як XLS і XLSX; може більше не підтримуватися; і (поки я не перевіряв розширення Ilia), лише COM і PUNO пропонують однаковий ступінь контролю над створеною робочою книжкою.


Розширення Ilia тепер підтримує XLS та XLSX.
Сара

6
@RZB - Ви використовуєте те, що працює для вас, хоча MySQL не має (наскільки я знаю) жодної вбудованої функції імпорту файлів .xls, лише для .csv, використовуючи INFILE ЗАВАНТАЖЕННЯ ДАНИХ. Як розробник PHPExcel, я, безумовно, просуваю його та рекомендую, де це доречно, але я не застосовую його використання, коли це не найбільш підходящий варіант.
Марк Бейкер

1
@velcrow приємний легкий двигун. Гарна рекомендація, потребує певної роботи, але виводить якісні файли
XSLX

1
ніж за ваш дорогоцінний час.
Заїн

1
@Mark, Було б чудово, якби ви могли зробити щось на кшталт$manyAnswers = split($libSeparator, $thisAnswer); // So we could vote and comment by lib
dap.tci
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.