[support] is_float...
MG
makgab at freemail.hu
2009. Feb. 19., Cs, 13:53:37 CET
Kókai László <zila at koolin.hu>:
> Ha olvasgatnád végre a php manualt...
Olvasom.
> is_float(floatval($form_state['values']['mezoneve']))
>
> var_dump(is_float('12.5'));
> bool(false)
> var_dump(is_float(floatval('12.5')));
> bool(true)
>
Igen, ezzel az volt a baj, hogy a
is_float(floatval($form_state['values']['mezoneve']))
mindig igaz lesz, mivel a floatval függvény átkonvertálja a
megadott változó értékét float-ra. Tehát az is_float mindig
igazat fog adni (kivéve egy esetet). Így tehát ez nem jó.
Azt tudtam csinálni, hogy:
if ( floatval($form_state['values']['mezoneve']) ) { ...
Így (majdnem) mindig float érték jön vissza, pl.:
input: floatval (numeric(9,2)):
15 15.00
15.25 15.25
15akarmi 15.00
akarmi /* hiba */
Tehát ez sem tökéletes megoldás, mert ha betüt és számot ir a
user, akkor a floatval a számértékkel tér vissza - a betüket
levágja. Ha csak betüket ir a user, akkor hibát ad.
G.
További információk a(z) support levelezőlistáról