2011-02-04 17 views
7

się to z mojej bazy danych:Usuwanie wszystkich dziesiętne w PHP

252.587254564

Dobrze Chcę usunąć .587254564 i utrzymać 252, w jaki sposób można to zrobić?

Jaką funkcję należy użyć i czy możesz pokazać mi przykład?

Pozdrowienia

Odpowiedz

11

Można to zrobić w PHP:

round($val, 0); 

lub w wyciągu MySQL:

select round(foo_value, 0) value from foo 
1

można użyć echo (int) 252.587254564;

2

Jak wspomniano Tricker można runda wartość w dół lub możesz po prostu rzucić ją na int tak:

$variable = 252.587254564; // this is of type double 
$variable = (int)$variable; // this will cast the type from double to int causing it to strip the floating point. 
2

Wystarczy rzucić go do int:

$new = (int)$old; 
5

można zrobić po prostu rzucić na int.

$var = 252.587254564; 
$var = (int)$var; // 252 
0

W MySQL można użyć:

select floor(field) 

lub w PHP można użyć:

floor($value); 
4

W PHP użyłbyś:

$ value = floor ($ wartość);

piętro Zwraca następną najniższą wartość całkowitą, zaokrąglając w dół wartość, jeśli to konieczne.

jeśli chciał zaokrąglić w górę byłoby

$ value = ceil (wartość $);

ceil Zwraca następną najwyższą wartość całkowitą przez zaokrąglenie wartości, jeśli to konieczne.

0

I nie jest też zupełnie nie wskazane metoda:

strtok($value, "."); 

Te kawałki pierwszej części aż napotka punkt. Wynik będzie ciągiem, a nie liczbą całkowitą PHP. Chociaż nie wpływa to zbytnio na wynik, to nie jest najlepsza opcja.

Powiązane problemy