Hallo alle zusammen,
ich will in einer Typo3 Extension eine PHP Datei einbinden und Inhalte mit einer Funktion aus dieser Datei ausgeben. Allerdings bekomme ich mehrere komische Fehler in der Art von:
Wrong datatype for second argument in FILE on line 183
Alleinstehend funktioniert die Datei und ich kann sie auch in andere PHP Dateien einbinden, die ohne Typo3 aufgerufen werden, von daher vermute ich, dass es ein Problem mit Typo3 ist.
Hat jemand eine Idee, was das Problem sein könnte und wie man es umgehen kann?
Gruß,
MRose
Hallo,
an welcher Stelle willst du die Datei denn verwenden? Wie bindest du die Datei ein? Ist es nur eine Funktion oder eine komplette Klasse?
Also ich würde aus dieser Datei eine Utility-Klasse machen, diese in deinem Controller (oder wo auch immer du die Funktion verwenden möchtest) injecten und dann auf die Funktion zugreifen. Das wäre meiner Meinung nach am saubersten.
VG
Hallo 9pm,
Vielen Dank für die schnelle Antwort.
Ich will die Funktion in der main Funktion der Extension verwenden, weshalb ich sie auch dort (mit include()) eingebunden habe.
Leider kann ich aus dieser Datei keine Klasse machen, da wir die Datei noch an einer anderen Stelle verwenden und es abwärtskompatibel bleiben sollte. Und da die eingebundene Datei noch andere Dateien einbindet kann ich sie leider auch nicht in den Extension Ordner kopieren.
So richtig sauber wird das leider nicht. Es wundert mich vor allem, dass diese Fehlermeldungen nur kommen, wenn man die Datei über Typo3 einbindet.
Gruß,
MRose
Guten Morgen,
hm, ok. Wo liegt denn diese Datei? Vielleicht kann sie einfach nicht gelesen werden, sprich ein Rechte-Probleme?
Viele Grüße
9pm
Guten Morgen,
die Datei liegt in einem anderen Verzeichnis (also z.B. /typo3/ und /andere/datei.php). Das macht aber kein Problem, weil die Datei auch eingebunden wird und auch andere Dateien einbindet, in denen der Fehler auftritt.
Wie oben geschrieben gibt es nur in der Typo3 Extension Probleme. Wenn ich die Datei in einem von Typo3 losgelösten PHP Skript aufrufe funktioniert es, so wie es soll.
Könnte es sein, dass Typo3 (aus Sicherheitsgründen) Extensions im Einbinden von anderen PHP Dateien einschränkt?
Gruß,
MRose
Ich denke nicht, kann es aber auch nicht mit 100%iger Sicherheit sagen. Enthält die eingebundene Datei denn die gültigen PHP Start- und Endtags? Das könnte zum Beispiel ein Problem sein.
VG
9pm
Was steht denn in der Datei in Zeile 183? Muss ja irgendeine function declaration sein, vermute ich.