Неопределенный тип PDF в Laravel 8

Я сделал composer require barryvdh/laravel-dompdf и php artisan vendor:publish --provider = "Barryvdh\DomPDF\ServiceProvider" после установки пакета DomPDF.

Я позвонил use PDF;

$pdf = PDF::loadHTML($html);

// Set the paper size (optional)
$pdf->setPaper('A4', 'portrait');

// Download the PDF with a specific file name
return $pdf->stream('sample.pdf')

Все, что вы получили, также присваивает пакету псевдоним 'PDF' => Barryvdh\DomPDF\Facade::class

Неопределенный тип «PDF»

Что может быть не так, спасибо.

Можете ли вы показать конфигурацию вашего псевдонима?

Daedalus 09.10.2023 02:13

'PDF' => Barryvdh\DomPDF\Facade::class,

Jan Beeck 09.10.2023 02:16

В следующий раз отредактируйте свой вопрос, указав эту информацию. Тем не менее, согласно документации, это неправильный класс. Должно быть Barryvdh\DomPDF\Facade\Pdf::class. Это потому, что Facade не является классом в папке src. Сам Facade — это папка, а не файл.

Daedalus 09.10.2023 02:22

Спасибо, Дедал, за ваш ответ, я внес это изменение в псевдоним. Однако когда я вызываю использование Barryvdh\DomPDF\Facade как PDF; У меня та же проблема. Что может быть?

Jan Beeck 09.10.2023 02:52

Как я уже сказал, класса Facade нет. Вы не воспользовались моим предложением.

Daedalus 09.10.2023 03:10

Даже когда я вызываю класс PDF с использованием PDF; проблема все еще... а не Barryvdh\DomPDF\Facade как PDF

Jan Beeck 09.10.2023 03:14
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
6
51
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Как указано в документации , вам необходимо либо use, либо псевдоним: Barryvdh\DomPDF\Facade\Pdf:

use Barryvdh\DomPDF\Facade\Pdf as PDF;
// Or, depending on personal preference:
use Barryvdh\DomPDF\Facade\Pdf;

Или

'PDF' => Barryvdh\DomPDF\Facade\Pdf::class

а потом,

use PDF;

Как видно, если вы проверите сам репозиторий, не считая документации, Фасадная часть пространства имен — это папка, а не файл/класс.

Вы не можете use или ссылаться на несуществующий класс. Класса Фасад нет; класс, который вам нужно использовать, будь то псевдоним или оператор обычного использования, — это Barryvdh\DomPDF\Facade\Pdf.

Другие вопросы по теме