Autor | Zpráva | ||
---|---|---|---|
JayJay Profil * |
#1 · Zasláno: 15. 5. 2007, 14:24:07
Zdravím...Pootřeboval bych poradit se scriptem,který by z externího souboru (např: cisla.txt) vypsal jeho obsah,tak aby vypočítal příklad který je v cisla.txt. Například mám v cisla.txt příklad 1+1,a v chci aby mi to nějaký php script zobrazil jako 2...Poradí mi někdo??Předem díky :D
|
||
JayJay Profil * |
#2 · Zasláno: 15. 5. 2007, 14:29:30
PS: zkoušel sem include i fopen,ale pořát to zobrazovalo 1+1...
|
||
WertriK Profil |
#3 · Zasláno: 15. 5. 2007, 14:54:22
Načteš do proměné a potom na to použiješ eval ... mohlo by to fakčit ...
|
||
JayJay Profil * |
#4 · Zasláno: 15. 5. 2007, 15:23:56
Dík,ale néjak mi to nejde...Stvořil jsem toto :
eval ($a); Ale hlásí mi to chybu... :-( |
||
MzM Profil |
#5 · Zasláno: 15. 5. 2007, 15:42:46
načíst řádek a prohnat přes eval. Zkusím to sepsat.
<?php /* obsah souboru priklad.txt ---------- 1+1 3+3 6*7 sqrt(2) ---------- */ $f = fopen("priklad.txt", "r"); if ($f != null) { while (!feof($f)) { $radek = fgets($f); if (trim($radek) != '') { $eval = '$vysledek = '.$radek.';'; eval($eval); echo "$radek = "; echo "$vysledek<br/> "; } } fclose($f); } ?> je tu jeden zádrhel. Buď musíš zajistit, že řádky v tom texťáku budou syntakticky správně nebo budeš muset nějak ošetřit text $eval před tím, než se provede. Ideální je PHP5 try catch... :-) |
||
JayJay Profil * |
#6 · Zasláno: 15. 5. 2007, 15:50:14
Díky funguje to...Akorát se bojím toho háčku,nějak sem ho totiž nepochopil. Jak si myslel to syntakticky správně??Bude tam prostě cislo+cislo+cislo atd...
|
||
MzM Profil |
#7 · Zasláno: 15. 5. 2007, 16:00:14 · Upravil/a: MzM
to jo, ale pokud do souboru napíšeš třeba
1 + 1 text tak to zahlásí, že došlo k chybě při vyhodnocování na řádku toho eval. pokud zajistíš, že tam takové věci nebudou, tak to bude fungovat. on se dá ošetřit i ten eval, to najdeš v manuálu k php. zádrhel v tomto podání znamená, že jsem to nenapsal tak, aby to zareagovalo na případné chyby. Prostě nejsem dokonalý, resp. jsem líný to napsat celé. Musím taky nechat prostor pro další, lepší, mladší... :-) |
||
JayJay Profil * |
#8 · Zasláno: 15. 5. 2007, 17:57:48
oki,dííky moc ;-)
|
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0