Hey, ich stehe gerade auf dem Schlauch und komme nicht drauf. Ich habe in einer PHP Variable $code folgenden Inhalt: $code = ‚floor($roundprice / 0.1) * 0.1 + 0.95‘; Dieser Inhalt kommt aus der DB und ist immer anders. Ich will nun diesen Code ausführen und das Ergebnis in eine Variable schreiben: eval("\$test = \"$code\";"); die($test);
Fehler: syntax error, unexcepted T_EXIT Weiß jmd den korrekten Syntax? Danke
Hallo, das Problem bei dir könnte sein, dass in $code einfach noch etwas fehlt, beispielsweise eine schliessende Klammer. Warum führst du nicht einfach einmal testweise eval($code); aus? Edit: Bei mir funktioniert es einwandfrei. Oder willst du das Ergebniss in $test speichern? Das müsstest du, wenn ich mich nicht irre, mittels eines returns in $code machen, und dieses dann außerhalb von eval in eine Variable speichern. $code = "return '3';"; $test = eval($code); die($test);
Gruß, Patrick :shopware:
Ich wollte das Ergebnis in $test speichern. Aber habe es nun hinbekommen. Danke //FORMEL AUSFÜHREN $todo = str\_replace('PRICE','$price',str\_replace('ROUNDMATH','round',str\_replace('ROUNDDOWN','floor',$under\_rule['formel']))); eval(" \$price2 = $todo;");
In $price2 steht nun das Ergebnis