[TYPO3-UG Oesterreich] EXT wrapper für PHP script
Wolfgang Klinger
wolfgang at stufenlos.net
Tue Sep 19 20:36:44 CEST 2006
Hallo!
Karl Nabinger schrieb folgendes am 19.09.2006:
> Parse error: parse error, unexpected T_PAAMAYIM_NEKUDOTAYIM,
> expecting',' or ';' in
> /srv/www/htdocs/test40/typo3conf/ext/in_sitebar/pi1/class.tx_insitebar_pi1.php
> on line 36
Hebräisch und bedeutet "Doppelter Doppelpunkt".
> class SB_Localizer
> {
> var $dir = t3lib_extMgm::extPath('in_sitebar').'/sitebar/locale';
> }
Das kannst du hier nicht so machen,
dafür mußt du schon einen Konstruktor verwenden.
> Eigentlich gehe ich davon aus, dass das Objekt t3lib_extMgm bereits von
> TYPO3 erzeugt wurde und global verfügbar ist - sonst würden wohl die
> include-Anweisungen nicht funktionieren.
Ist es auch, es ist nur nicht erlaubt sowas in einer Member Variablen
Deklaration zu verwenden.
Außerdem dachte ich, dass du einen OOP Background hast, da würd' ich
schon erwarten eine Klasse nicht als Objekt zu bezeichnen ;-)
> Kannst Du erkennen, warum er hier den doppelten : anmeckert?
> Ich vermute als PHP-Newbie, das hat etwas mit der Objektsyntax zu tun?
> Vermulich muss ich t3lib_extMgm->extPath('in_sitebar') schreiben, aber
> trotz include von require_once(PATH_t3lib.'class.t3lib_extmgm.php'); mag
> er mich nicht.
In dem Fall wäre t3lib_extMgm fast ein Objekt (würde ein $ fehlen),
aber das gibt es nicht (nicht instanziert).
> Aus OOP-Sicht eigentlich ein absolutes "no-no" -- das kann nur an PHP
> liegen, denn in anderen Umgebungen kann man nicht auf die reine
> Klassendefinition ohne Objektinstantiierung zugreifen....
Na geh, statische Methodenaufrufe gibt es in fast jeder
Programmiersprache. Wozu ein Objekt instanzieren, wenn ich keines
brauche?
lg
Wolfgang
More information about the TYPO3-at
mailing list