Как превратить сырой XLSX в удобный отчёт: настроить шрифты, заливки, границы и числовые форматы, закрепить шапку и добавить фильтр. Разбираем стили FastExcelWriter на примере отчёта о продажах.
«Excel скачался, но повреждён» — почти всегда лишние байты вокруг ZIP. Разбираем, как правильно отдавать XLSX в браузер: методы download()/output(), эталонные заголовки и рецепты для контроллеров Laravel и Symfony.
Даты превращаются в 44898, у артикулов пропадают ведущие нули, номера карт — в 8.98E+18. Это не баги, а то, как Excel хранит значения. Учимся правильно типизировать данные при экспорте в XLSX через FastExcelWriter.
Экспорт отчёта в Excel валится с OOM на больших данных? Причина — объектная модель «вся книга в памяти». Пишем миллион строк в XLSX с константной памятью на чистом PHP: потоковая схема «строка → temp-файл → ZIP» FastExcelWriter.
XLSX — это не «документ Excel», а ZIP-архив с XML-файлами. В статье разбираю внутреннее устройство формата и объясняю, почему потоковая запись принципиально эффективнее объектной модели при генерации больших Excel-файлов в PHP
Генерация Excel в PHP кажется простой задачей, ровно до тех пор, пока файл не вырастает до сотен тысяч строк, а скрипт не упирается в лимиты памяти или не отваливается по таймауту.
Это статья про философию FastExcelPhp и задачи, которые решает это семейство библиотек.
Зачем нужна библиотека FastExcelWriter, если есть замечательная PhpSpreadsheet? Да затем, что она просто лучше - быстрее, экономнее, лаконичнее!