Ragazzo, questo è davvero strano. Mi aspetto che il seguente codice stampi il 1990, ma stampa 1989!Perché `intval (19.9 * 100)` è uguale a `1989`?
$val = '$19.9';
$val = preg_replace('/[^\d.]/','',$val);
$val = intval($val * 100);
echo $val;
Perché mai succede questo?
Edit: e questo codice:
$val = '$19.9';
$val = preg_replace('/[^\d.]/','',$val);
echo $val . "<br>";
$val = $val * 100;
echo $val . "<br>";
$val = intval($val);
echo $val;
Stampe:
19.9
1990
1989
Perché intval(1990)
pari 1989
???
'intval ('1990')' mi dà 1990. Proverò a controllare il tuo caso. Nel frattempo, prova a dare un titolo più pertinente alla tua domanda. – zneak
No, no. 'intval ('1990')' dà 1990, quello che sto dicendo è che l'esempio suggerisce indirettamente che 'intval (1990)' è uguale a '1989' –
Questo problema è stato discusso in circa ogni altra lingua conosciuta dall'uomo in questo sito ... – animuson