执行以下命令时出现问题。
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 = 新的 ZipArchive(); 339| $zip->open($p文件名); 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,但它仍然无法正常工作。
版本如下;
PHP : 7.3
拉拉维尔:6.6.0
自定义网站/excel:3.1.17
mysql Ver 15.1:Distrib 5.5.64-MariaDB,适用于 Linux (x86_64),使用 readline 5.1
CentOS Linux:发布 7.7.1908(核心)
喵喵时光机