[英]Laravel Excel, file import throws “ZipArchive::getFromName(): Invalid or uninitialized Zip object”
我正在使用Laravel excel導入標題和一些記錄。
使用這種方法,我應該能夠獲得標題:
$headings = (new HeadingRowImport)->toArray($myFile);
如果$myFile
是 CSV 就可以了; 但是如果我嘗試使用 XLS 或 XLSX(使用有效的 Mimetypes: application/vnd.ms-excel
和application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
,我會遇到這樣的問題:
ZipArchive::getFromName():
Invalid or uninitialized Zip object {"exception":"[object] (ErrorException(code: 0):
ZipArchive::getFromName(): Invalid or uninitialized Zip object at
/var/www/app/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx.php:308)
[stacktrace]
#0 [internal function]: Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError(2, 'ZipArchive::get...', '/var/www/app/ve...', 308, Array)
#1 /var/www/app/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx.php(308): ZipArchive->getFromName('_rels/.rels', 0, 1)
#2 /var/www/app/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx.php(2019): PhpOffice\\PhpSpreadsheet\\Reader\\Xlsx->getFromZipArchive(Object(ZipArchive), '_rels/.rels')
#3 /var/www/app/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx.php(343): PhpOffice\\PhpSpreadsheet\\Reader\\Xlsx->getWorkbookBaseName(Object(ZipArchive))
#4 /var/www/app/vendor/maatwebsite/excel/src/Reader.php(229): PhpOffice\\PhpSpreadsheet\\Reader\\Xlsx->load('/tmp/laravel-ex...')
#5 /var/www/app/vendor/maatwebsite/excel/src/Reader.php(215): Maatwebsite\\Excel\\Reader->readSpreadsheet()
我試圖找到相關的錯誤,但我只找到了 PhpExcel 或 PhpSpreadsheet,例如:
而且我無法從他們那里找到有用的解決方法。 有沒有人遇到過這個問題,你是如何解決的?
我的 package 版本:
請注意,我的文件具有read
權限,因為它是644
,我可以使用fopen($myFile, 'r')
打開文件
似乎他們已經進行了一些更新,並且3.1.19
版本解決了這個問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.