ZodiacXP
Erfahrenes Mitglied
Leider habe ich für die Erweiterung keine Zeit übers Wochenende, von daher hab ich schnell eine Funktion gemacht, die die PN in Infix umwandelt:
So kann man wunderbar mithilfe von eval rechnen lassen:
Selbst die Variablen sind noch an der richtigen Stelle, was die Erweiterung sogar noch einfacher macht. Einfach noch rekursiv durch deren Werte ersetzen, dann wär's getan. Schade, das ich gleich weg bin.
PHP:
function PNtoInfix($s) {
$s = strrev($s);
while (preg_match("!([^\s]+)\s([^\s]+)\s([\+\-\*\/]+)!", $s))
$s = preg_replace("!([^\s]+)\s([^\s]+)\s([\+\-\*\/]+)!", "($2$3$1)", $s);
return $s;
}
So kann man wunderbar mithilfe von eval rechnen lassen:
PHP:
$s = "* * + 1 2 + 3 4 2";
eval("echo ".PNtoInfix($s).";");
Selbst die Variablen sind noch an der richtigen Stelle, was die Erweiterung sogar noch einfacher macht. Einfach noch rekursiv durch deren Werte ersetzen, dann wär's getan. Schade, das ich gleich weg bin.