Ce face floatval
floatval citește numărul de la începutul unui text, inclusiv zecimalele și notația științifică ("1.5e3"). Se oprește la primul caracter nevalid. doubleval este un alt nume pentru aceeași funcție.
Separatorul zecimal trebuie să fie punctul. Un text cu virgulă, cum scriem în română, este citit doar până la virgulă.
Parametri
| Parametru | Descriere |
|---|---|
$value |
Valoarea transformată. |
Ce returnează
Numărul, ca float. Pentru texte fără număr la început returnează 0.
Exemple
Exemplul 1: Transformări uzuale
<?php
var_dump(floatval("49.90"));
var_dump(floatval("1.5e3"));
var_dump(floatval("12.5 lei"));
var_dump(floatval("lei 12.5"));
Rezultat
float(49.9)
float(1500)
float(12.5)
float(0)
Exemplul 2: Prețuri scrise cu virgulă
<?php
$pret = "1299,50";
var_dump(floatval($pret));
var_dump(floatval(str_replace(",", ".", $pret)));
Rezultat
float(1299)
float(1299.5)
Greșeli frecvente
- Transformi direct un preț românesc (
"1.299,50"). Rezultatul este1.299. Scoate întâi punctul de mii și înlocuiește virgula cu punct.
Comenzi înrudite
intval: Transformă o valoare în număr întreg.is_numeric: Verifică dacă o valoare este un număr sau un text care arată ca un număr.number_format: Formatează un număr cu zecimale și separator de mii, de exemplu 1.299,50.