Archiv verlassen und diese Seite im Standarddesign anzeigen : Statische Variable in String einfügen
Hallo,
ich habe folgendes Problem:
Ich möchte eine statische Variable innerhalb eines Strings notieren.
$string = <<<end
blah
foo::$var
blah
end;
Leider wird hier nur "$var" geparst, was es natürlich nicht gibt. Auch mit "{foo::$var}" funktioniert es nicht.
Hat hier jemand eine Lösung?
Hi,
ich weiß jetzt nicht was Du unter einer "statischen Variable" verstehst. Aber müßte es nicht eher "{$foo::bar}" bzw. "{$foo->bar}" lauten als "{foo::$bar}"?
Pingu
Hallo,
@Pingu Mit statischer Variable meint er eine Klassenvariable vom Typ static.
foo::$var ist da schon korrekt.
$foo::var gibt es nicht!
Funktionieren kann das nur so...
$var = foo::$var;
$string = <<<end
blah
$var
blah
end;
@Pingu Mit statischer Variable meint er eine Klassenvariable vom Typ static.
Achso. Hmmm.... Dann weiß ich auch grade nicht weiter, da ich damit noch nicht viel gemacht habe.
Gruß
Pingu
EDIT: Immer dieser Prosecco am helligsten Tag. *schwips* *g*
Ja wie....?
Prosecco am helligsten Tag - wo gibts denn sowas?
Aber damit du nicht dumm stirbst: http://zend.com/manual/language.oop5.static.php :D
Hallo,
@Pingu Mit statischer Variable meint er eine Klassenvariable vom Typ static.
foo::$var ist da schon korrekt.
$foo::var gibt es nicht!
Funktionieren kann das nur so...
$var = foo::$var;
$string = <<<end
blah
$var
blah
end;
Das kann ja nicht im Sinne des Erfinders sein. Ich glaube ich schreibe mal einen Bug-Report.
Statische Methoden und Variablen sind dann ganz prkatisch, wenn man von einer Klasse eh nie mehr als eine Instanz braucht. So kapsel ich z.B. den SQL-Zugriff, und den brauche ich nunmal nuer einmal.
Ein Bugreport wird nichts bringen, da das Verhalten kein Bug ist.
Einfache Variablen in einen String enzubetten ist ohnehin schon ein Luxus der dir nur von PHP geboten wird.
Normale Variablen von Klassenvariablen zu unterscheiden ist vom Parser her fast unmöglich.
Gruß,
Gaert
PS: Was im Sinne des Erfinders ist konnte ich während eines Plauschs mit Rasmus Lerdorf auf dem Linuxtag letztes Jahr erfahren: Er benutzt PHP nach wie vor meistens nur als Template System... so wie es von ihm ursprünglich auch gedacht war ;) .
Naja, es stimmt schon, nach foo::$bar zu parsen braucht wohl zwei Durchgänge. Die Syntax ist generell eh etwas verwirrend. Vielleicht hätte man sich hier mehr an Java anlehnen sollen.
Powered by vBulletin® Version 4.2.5 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.