Code im String auswerten

Hallo!

Folgendes ergibt bei mir leider einen Fehler:
$var =3D "foo".$i+3."bar";
Dem abgeholfen habe ich so:
$var =3D "foo".eval("return $i+3;")."bar";

Gibt es dafür noch eine bessere Variante? Vielleicht mit einer PHP
Funktion, welche einfach das Argument entgegennimmt und die Auswertung
zurückliefert?

Gruß,
Kai
stroncococcus [ Di, 14 August 2007 16:56 ] [ ID #1795189 ]

Re: Code im String auswerten

Kai Schlamp schrieb:
> Folgendes ergibt bei mir leider einen Fehler:
> $var = "foo".$i+3."bar";
> Dem abgeholfen habe ich so:
> $var = "foo".eval("return $i+3;")."bar";

Suchst du folgendes?
$var = "foo".($i+3)."bar";

Michael
mmueller12 [ Di, 14 August 2007 16:59 ] [ ID #1795190 ]

Re: Code im String auswerten

..oO(Michael Müller)

>Kai Schlamp schrieb:
>> Folgendes ergibt bei mir leider einen Fehler:
>> $var = "foo".$i+3."bar";
>> Dem abgeholfen habe ich so:
>> $var = "foo".eval("return $i+3;")."bar";
>
>Suchst du folgendes?
>$var = "foo".($i+3)."bar";

Oder - hauptsächlich für komplexere Geschichten - sprintf():

$var = sprintf('foo%ubar', $i+3);

Damit kriegt man jeden noch so komplexen Ausdruck in einen String.

Micha
Michael Fesser [ Di, 14 August 2007 17:10 ] [ ID #1795191 ]

Re: Code im String auswerten

Kai Schlamp schrieb:

>$var = "foo".eval("return $i+3;")."bar";

Ohgottohgottohgott... Versprich bitte, das nie wieder zu tun.
Antwort siehe Michael :)

--
Wolfgang Fellger
Wolfgang Fellger [ Di, 14 August 2007 17:11 ] [ ID #1795192 ]

Re: Code im String auswerten

> Ohgottohgottohgott... Versprich bitte, das nie wieder zu tun.
> Antwort siehe Michael :)

Versprochen :-)
Zumal ich hätte schwören können, daß ich diese Möglichkeit als er=
stes
ausprobiert habe ... habe wahrscheinlich die Klammerung falsch
gesetzt ... ist ja äussert schwierig bei zwei Klammern ;-)

Danke euch,
Kai
stroncococcus [ Di, 14 August 2007 17:29 ] [ ID #1795193 ]

Re: Code im String auswerten

> Ohgottohgottohgott... Versprich bitte, das nie wieder zu tun.
> Antwort siehe Michael :)

Versprochen :-)
Zumal ich hätte schwören können, daß ich diese Möglichkeit als er=
stes
ausprobiert habe ... habe wahrscheinlich die Klammerung falsch
gesetzt ... ist ja äussert schwierig bei zwei Klammern ;-)

Danke euch,
Kai
stroncococcus [ Di, 14 August 2007 17:29 ] [ ID #1795194 ]
PHP » de.comp.lang.php.misc » Code im String auswerten

Vorheriges Thema: Bilder werden nicht aktualisiert
Nächstes Thema: Nochmal Probleme mit Xtree