Подключение PhpSpreadsheet в Laravel

156
25 сентября 2018, 16:50

В абсолютно стандартном проекте laravel не могу понять как подключить данную библиотеку через app.php, свои классы там регистрировал и проблем не возникало, тут в полном замешательстве.

Пробовал так

    /*
     * Package Service Providers...
     */
    PhpOffice\PhpSpreadsheet\Spreadsheet::class,
    PhpOffice\PhpSpreadsheet\Writer\Xlsx::class,
    ...

и прописывать

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

В файлах где необходимо это использовать, но к сожалению сталкиваюсь с ошибкой

Call to undefined method PhpOffice\PhpSpreadsheet\Spreadsheet::isDeferred()

Laravel-excel не использую потому что очень много сделано именно на PHPSpreadsheet, а времени переносить нет.

Если получится все взаимодействие свести через алиас Excel (как это делается с laravel-excel) было бы здорово.

Answer 1
  1. Устанавливаем laravel
  2. Устанавливаем PhpSpreadsheet
  3. В laravel создаёт тестовый контроллер php artisan make:controller TestController
  4. Прописываем роут в routs\web.php - Route::get('/test', 'TestController@index');
  5. Открываем контроллер TestController и делаем его таким

По факту делаем так, как в примере в документации

<?php
namespace App\Http\Controllers;
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
class TestController extends Controller
{
    public function index()
    {
        $spreadsheet = new Spreadsheet();
        $sheet = $spreadsheet->getActiveSheet();
        $sheet->setCellValue('A1', 'Hello World !');
        $writer = new Xlsx($spreadsheet);
        $writer->save('hello world.xlsx');
        return 'ok';
    }
}

Созданный файл hello world.xlsx можно найти в папке public

READ ALSO
Вывод информаций из JSON в HTML 2

Вывод информаций из JSON в HTML 2

Предыдущее решение: РЕШЕНИЕ

221
PHP - Не получается отправлять эл.почту

PHP - Не получается отправлять эл.почту

Пытаюсь отправить почту с сервера на PHPв php

173
Подключить файл к DB

Подключить файл к DB

Ребята ,с базой данных еще никогда не сталкивался вообще по этому не судите строгоВчера только попробовал создать базу называется "new_tech_user"...

180
Почему не рендерится activeTextInput

Почему не рендерится activeTextInput

Создаю свой виджет с кастомным поведением через JavaScript

147