Запись в файл Excel с использованием PhpSpreadsheet - PullRequest
0 голосов
/ 25 мая 2018

У меня есть php-код, который срабатывает каждый раз, когда пользователь нажимает определенную кнопку.Этот код в основном создает новый каталог и новый файл Excel в том же каталоге.Моя цель - записать в этот файл Excel.У меня есть следующий код (который не работает, кстати):

$filename = 'moldes/VLMOLDES_'.$id.'/Orcamento161.xlsm';
$spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load($filename);
$worksheet = $spreadsheet->getActiveSheet();
$worksheet->getCell('A18')->setValue('3');

Все, кроме записи в файл работает как положено.Когда я нажимаю кнопку, открывается пустая страница, но ничего не происходит!Я пробовал много разных способов, но я новичок в phpSpreadSheets.Как я могу написать в определенной ячейке в этом файле?

1 Ответ

0 голосов
/ 22 марта 2019

Вам не хватает следующего - вам нужно сохранить файл в конце кода, иначе изменения не будут отражены в файле.

$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, "Xlsx");
$writer->save('moldes/VLMOLDES_'.$id.'/Orcamento161.xlsm');

Также может быть предпочтительнееиспользование:

$worksheet->setCellValue('A18', '3');
...