Мне нужно настроить и использовать Box Spout на Laravel 4.2, но библиотека не работает. Я запустил команду для установки зависимостей Composer:
composer require box/spout
Но код не работает:
$writer = WriterFactory::create(Type::XLSX); // for XLSX files
$filePath = public_path() . "/relatorios/test.xlsx";
$writer->openToFile($filePath);
$singleRow = ['No'=>1,'Nama'=>'Bayummic','Nilai'=>11,'Nim'=>14140101];
$writer->addRow($singleRow); // add a row at a time
$writer->close();
Сообщение об ошибке:
[2016-12-07 17:35:38] production.INFO: D:\Projetos\Testes\LaravelQueues\public [] []
[2016-12-07 17:35:38] production.ERROR: exception 'Box\Spout\Common\Exception\IOException' with message 'Cannot perform I/O operation outside of the base folder: C:\Windows\Temp' in D:\Projetos\Testes\LaravelQueues\vendor\box\spout\src\Spout\Common\Helper\FileSystemHelper.php:130
Спасибо за внимание.
Кажется, что-то не так с временной папкой по умолчанию, в которой создается файл XLSX. Вы можете попробовать использовать $writer->setTempFolder('PATH/TO/CUSTOM/TEMP/FOLDER');
перед звонком openToFile()
переопределить местоположение по умолчанию.
Других решений пока нет …