Mailinglisten-Archive |
Hi Andreas, das geht ganz 'easy' mit eval, also z.B.: eval($term); Du musst halt nur darauf achten, dass $term praktisch ein voll funktionsfaehiges Script enthaelt. Natuerlich ohne '<?php' und '?>' am Anfang und Ende ... ;-) > $term = '$x*$x-4'; hier fehlt die komplette linke Seite der Befehlszeile UND das Semikalon am Ende. Mehr als eine Fehlermeldung wird dabei nicht herauskommen ... <PRE><?php $term = '$Y = $X * $X - 4;'; for ($X = -3; $X <= 3; $X += 0.1) {eval($term); if ($Y == 0) {echo 'X = '.$X.' bei Y = '.$Y; } } ?></PRE> DAS laeuft fehlerfrei durch, zeigt aber auch nix an. WEIL: Du denkst im Dezimalsystem, PHP rechnet binaer: <PRE><?php $term = '$Y = $X * $X - 4;'; $limes = 1 / 1000000; for ($X = -3; $X <= 3; $X += 0.1) {eval($term); if (abs($Y) < $limes) {echo 'X = '.sprintf('% 5s', number_format($X,1,',','.')); echo ' bei Y = '.sprintf('% 7s', number_format($Y,3,',','.')); echo ' = '.sprintf('% 23s', $Y)."\n"; } } ?></PRE> Jetzt kommt die Ausgabe wie geplant(gewuenscht). m. b. G. Norbert _____________________ normal: 02292-681769 Notruf: 0177-2363368 --------------------- e.o.m.
php::bar PHP Wiki - Listenarchive