Hallo nochmals,
Also, jetzt aber ein wirkliches Problem ;)
Ich möchte mit dem Wert einer Variable rechnen.
In einer GET-Variable steht z.B.: $a*$b
Jetzt möchte ich im weiteren Script genau mit diesem "Wert" rechnen, aber halt nicht als Wert sondern als Formel. Schwer zu erklären. Das Beispiel dürfte aber mein Problem zeigen:
//?ab=$a*$b
$a = 4;
$b = 5;
$c = $a*$b //<-- so soll es nachher verwendet werden
$c= $_GET['ab']; //<-- so klappt logischerweise nicht, ...leider
Ist sowas irgendwie machbar? ..und wenn, wie? ;)
eval...sollte man aber mit großer vorsicht genießen, da man jeden php befehl ausführen kann
ahja, stimmt. die funktion hab ich irgendwie total verdrängt.
allerdings funzt dat hier nich so wie ich mir das vorstelle, bzw. weiß net so genau wie ich mein vorhaben umsetzen soll. !?
//?formel=$x*$x
function mathfunc($x) {
$get = $_GET['formel'];
eval("return $get;");
}
echo mathfunc(5)
ohh gott...
bin mir net sicher, aba kann man das auch so iwie prüfen..?
function mathfunc($x) {
if(empty($x)) return false;
eval('$x = '.$x.';');
if(!is_numeric($x)) return false;
return $x;
}
aba wenn der geprüft hat, ob $x ne nummer is, ists wahrscheinlich schon zu spät, oder?
Der Wert der Variable erhält er erst später.
Über $_GET oder $_POST wird erstmal der Wert $x*$x übertragen (naja, oder halt irgendwelche anderen Formeln, genau darum gehts ja).
Dieser "Wert" soll dann in einer Funktion als Formel verwendet werden.