我执行以下命令时遇到问题。
php artisan db:seed --class=QuestionTableSeeder
错误消息如下。
Symfony \ Component \ Debug \ Exception \ FatalThrowableError:类 找不到“ ZipArchive”
在/var/www/csi/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx.php:338 334 | $ excel-> removeCellXfByIndex(0); //删除默认样式 335 | } 336 | $ unparsedLoadedData = []; 337 |
338 | $ zip = new ZipArchive(); 339 | $ zip-> open($ pFilename); 340 | 341 | //首先阅读主题,因为在阅读样式时我们需要配色方案 342 | //〜http://schemas.openxmlformats.org/package/2006/relationships“
异常跟踪:
1
PhpOffice \ PhpSpreadsheet \ Reader \ Xlsx :: load(“ / tmp / laravel-excel-8wjCLq8hS4qVk49C5Rg30jkE6zVErU01.xlsx”) /var/www/csi/vendor/maatwebsite/excel/src/Reader.php:2292 Maatwebsite \ Excel \ Reader :: readSpreadsheet() /var/www/csi/vendor/maatwebsite/excel/src/Reader.php:215
请使用参数-v查看更多详细信息。
紧随其后的是QuestionTableSeeder类。
<?php
use App\Imports\QuestionImport;
use App\ORM\Question;
use Illuminate\Database\Seeder;
use Maatwebsite\Excel\Facades\Excel;
class QuestionTableSeeder extends Seeder
{
public function run(): void
{
DB::statement('set foreign_key_checks=0');
Question::truncate();
DB::statement('set foreign_key_checks=1');
Excel::import(new QuestionImport(), 'database/seeds/data/questions.xlsx');
}
}
请告诉我解决方案。我该怎么办才能解决问题?我已经安装了php7.3-zip和php73-php-pecl-zip,然后重新启动了Apache,但仍然无法正常工作。
版本如下;
答案 0 :(得分:0)
尝试运行
php -m | grep zip
如果缺少输出CLI上的“ zip”显示,则表示您未安装php zip扩展名。您应该已安装。
yum install -y zip php-zip php-pecl-zip
希望有帮助。