Ошибка "класс' ZipArchive 'не найден" возникает при выполнении команды db: seed Artisan
У меня есть проблема, когда я выполняю следующую команду.
php artisan db:seed --class=QuestionTableSeeder
Сообщение об ошибке выглядит следующим образом.
Symfony\Component\Debug\Exception\FatalThrowableError: Класс 'ZipArchive' не найден
около в /var/www в/ИБК/поставщика/phpoffice/phpspreadsheet/ГРЦ/PhpSpreadsheet/читатель/XLSX-файл.РНР:338 334 / $excel - >removeCellXfByIndex(0); / / удалить стиль по умолчанию 335| } 336| $unparsedLoadedData = []; 337|
338 / $zip = новый ZipArchive(); 339 / $zip- > открыть($pFilename); 340| 341 / / / сначала прочитайте тему, потому что нам нужна цветовая схема при чтении стилей 342| / / ~ http://schemas.openxmlformats.org/package/2006/relationships"
Трассировка исключений:
Один
PhpOffice\PhpSpreadsheet\читателя\файлы XLSX::нагрузки("/tmp/и что Laravel-Excel по-8wjCLq8hS4qVk49C5Rg30jkE6zVErU01.файлы XLSX") в /var/www в/ИБК/поставщика/maatwebsite и Excel/ГРЦ/читателя.РНР:2292 Maatwebsite\Эксел\читателя::readSpreadsheet() в /var/www в/ИБК/поставщика/maatwebsite и Excel/ГРЦ/читателя.РНР: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, но все равно он не работает.
Версии следующие;
- РНР : 7.3
- Laravel : 6.6.0
- maatwebsite/в Excel : 3.1.17
- mysql Ver 15.1: дистрибутив 5.5.64-MariaDB, для Linux (x86_64) с использованием readline 5.1
- CentOS Linux: выпуск 7.7.1908 (ядро)
Ответы - Ошибка "класс' ZipArchive 'не найден" возникает при выполнении команды db: seed Artisan / Error "Class 'ZipArchive' not found" occures when the db:seed Artisan command is executed


php -m | grep zip
поэтому я выполнил команду, которой вы меня научили. Наконец, сеялка сработала. Большое спасибо!