Dieser Artikel beschreibt zwei Patches, mit denen Joomla 1.0.15 unter PHP 5.3.x ausgeführt werden kann.
Voraussetzungen
Joomla 1.0.15 wurde noch nicht auf 1.5 migriert und PHP auf Version 5.3 umgestellt
Fehlermeldungen
Content
Warning: Parameter 2 to NAME_OF_COMPONENT expected to be a reference, value given in
PATH_TO_CMS/includes/Cache/Lite/Function.php on line 100
Ursache für den Fehler: PHP 5.3 erwartet einen expliziten Call by Reference.
Contact
Fatal error: Cannot redeclare quoted_printable_encode() in PATH_TO_CMS/cms/includes/vcard.class.php on line 74
Ursache für den Fehler: PHP führt ab Version 5.3 eine eigene Funktion quoted_printable_encode() ein, die Syntax unterscheidet sich nicht von der Definition unter Joomla 1.0.15.
Fehlerbeseitigung
Function.php
In den Zeilen 92, 98 und 100 den Wert
$arguments
ersetzen durch
&$arguments
vcard.class.php
Normalerweise würde es reichen, die Definition auszukommentieren. Aus Faulheit (testen kostet Zeit) benenne ich die Funktion um in quoted_printable_encode2() (Zeile 32) und ersetze die anderen fünf Vorkommen von quoted_printable_encode() durch quoted_printable_encode2().
Weiterführende Links:
- What has changed in PHP 5.3.x (php.net)
- 5.2 to 5.3 migration von Stas Malyshev (Zend Developer Zone) – mit Link zu einem Skript, das Inkompatibilitäten aufspürt.
Kommentare