Из выгрузки в отчёт: стили, автоширина, закреплённая шапка, автофильтр и несколько листов

aVadim • 08.10.2026 •
Как превратить сырой XLSX в удобный отчёт: настроить шрифты, заливки, границы и числовые форматы, закрепить шапку и добавить фильтр. Разбираем стили FastExcelWriter на примере отчёта о продажах.

Excel-отчёт по кнопке: отдаём XLSX в браузер правильно

aVadim • 17.09.2026 •
«Excel скачался, но повреждён» — почти всегда лишние байты вокруг ZIP. Разбираем, как правильно отдавать XLSX в браузер: методы download()/output(), эталонные заголовки и рецепты для контроллеров Laravel и Symfony.

Экспорт связей Eloquent без N+1 при потоковой выгрузке

aVadim • 13.09.2026 •
Потоковый экспорт через cursor() экономит память, но обращение к связям модели внутри выгрузки порождает N+1 — тысячи лишних запросов. Разбираем, почему cursor() не спасает со связями и как выгрузить их через lazy() без потери памяти.

Импорт XLSX на 1 000 000 строк без memory_limit в 2 ГБ: потоковое чтение в PHP

aVadim • 03.09.2026 •
Импорт большого Excel-файла роняет PHP по памяти? Разбираем, почему объектная модель книги обречена на OOM, и читаем XLSX на миллион строк с константной памятью — на XMLReader и генераторах FastExcelReader.

Даты числом 44898, пропавшие нули и 8.98E+18: как не испортить данные при экспорте в Excel

aVadim • 29.08.2026 •
Даты превращаются в 44898, у артикулов пропадают ведущие нули, номера карт — в 8.98E+18. Это не баги, а то, как Excel хранит значения. Учимся правильно типизировать данные при экспорте в XLSX через FastExcelWriter.

Excel-аналог mail-merge: как заполнить готовый XLSX-шаблон данными

aVadim • 27.08.2026 •
В Word есть слияние: берёшь шаблон с полями и подставляешь данные. Для Excel такого «из коробки» будто бы нет — и разработчики начинают собирать документ ячейка за ячейкой в коде. На самом деле подстановка в готовый XLSX делается в две строки: разбираем плейсхолдеры, разницу fill/replace и типичные грабли.

Импорт XLSX в модели Eloquent за три строки: заголовки и маппинг колонок

aVadim • 22.08.2026 •
Импорт Excel в модели Eloquent обычно превращается в цикл ручного разбора ячеек. Показываем, как withHeadings() и mapping() сводят его к нескольким строкам и как аккуратно привязать «чужие» колонки файла к атрибутам модели.

Экспорт миллиона строк в XLSX на чистом PHP: константная память вместо memory_limit = 2G

aVadim • 18.08.2026 •
Экспорт отчёта в Excel валится с OOM на больших данных? Причина — объектная модель «вся книга в памяти». Пишем миллион строк в XLSX с константной памятью на чистом PHP: потоковая схема «строка → temp-файл → ZIP» FastExcelWriter.

Заполнение бланка счёта из XLSX-шаблона: обзор FastExcelTemplator

aVadim • 11.08.2026 •
Бухгалтер уже нарисовал бланк счёта в Excel — с логотипом, рамками, форматами и формулами. Не надо повторять это в коде: FastExcelTemplator берёт готовый XLSX как шаблон, подставляет данные в плейсхолдеры и размножает строки таблицы, сохраняя оформление.

Почему Laravel Excel ест гигабайты, а fast-excel-laravel — десятки мегабайт

aVadim • 08.08.2026 •
Laravel Excel падает по памяти на большом экспорте не из-за вашего кода, а из-за архитектуры PhpSpreadsheet. Разбираем, почему чанки не спасают, и как потоковая выгрузка через cursor() держит память постоянной.