mPDF

Hi,

in einem Plugin-Controller haben wir zur Erstellung eines PDFs früher fpdf verwendet. Nach Update von Shopware 5.2.16 auf 5.5.5 funktioniert die Action zur PDF-Erstellung des Plugins nicht mehr. Scheinbar wurde im Core bzgl. PDF-Generierung auf mPDF umgestellt. Wollte nun die PDF-Erzeugung auf mPDF ändern. Laut Doku (Shopware 5 upgrade guide) wurde mPDF im Autoloader registriert und man soll eine neue Instanz einfach durch 

$mpdf = new mPDF();

ohne include der Klasse erzeugen können. Leider kommt damit auch gleich die Fehlermeldung " Fatal error : Uncaught Error: Class ‘mPDF’ not found in /…"

Kann mir jemand auf die Sprünge helfen, wie ich eine neue Instanz im Controller meines Plugins referenzieren kann?

LG

MPDF baut auf FPDF auf:

mPDF is a PHP library which generates PDF files from UTF-8 encoded HTML.
It is based on FPDF and HTML2FPDF with a number of enhancements.

Daher ist die FPDF-Klasse natürlich weiterhin vorhanden. Bei dir fehlen einfach die angabe der Namespaces (in diesem Fall der Root-Namespace). Während im alten Pluginsystem diese manchmal fehlten, sind die im neuen Standard.

Der Backslash ist daher am Anfang ganz wichtig:

 

Du kannst also beides verwenden. Wichtig ist der Backslash \ am Anfang.

http://php.net/manual/de/language.namespaces.php

Viele Grüße

1 Like