開發過程中,遇到數據處理取整的時候,你會用哪個呢,下面我將介紹下PHP取整函數有ceil,floor,round,intval的區別:
工具/原料
PHP開發環境
ceil — 進一法取整
函數說明
float ceil ( float $value )
返回不小於 value 的下一個整數,value 如果有小數部分則進一位。ceil() 返回的類型仍然是 float,因為 float 值的範圍通常比 integer 要大。
ceil() 例子如圖:
floor — 捨去法取整
函數說明
float floor ( float $value )
返回不大於 value 的下一個整數,將 value 的小數部分捨去取整。floor() 返回的類型仍然是 float,因為 float 值的範圍通常比 integer 要大。
floor() 例子如圖:
round — 對浮點數進行四捨五入
函數說明
float round ( float $val [, int $precision ] )
返回將 val 根據指定精度 precision(十進制小數點後數字的數目)進行四捨五入的結果。precision 也可以是負數或零(默認值)。
注意:
1、PHP 默認不能正確處理類似 “12,300.2″ 的字符串。2、precision 參數是在 PHP 4 中被引入的。
round() 例子如圖:
intval — 獲取變量的整數值
函數說明
int intval ( mixed $var [, int $base ] )
通過使用特定的進制轉換(默認是十進制),返回變量 var 的 integer 數值。 var 可以是任何標量類型。intval() 不能用於 array 或 object。
注意:
1、通過使用指定的進制 base 轉換(默認是十進制),返回變量 var的 integer 數值。intval() 不能用於 object,否則會產生 E_NOTICE 錯誤並返回 1。
2、如果 base 是 0,通過檢測 var 的格式來決定使用的進制:
如果字符串包括了 "0x" (或 "0X") 的前綴,使用 16 進制 (hex);否則,將使用 10 進制 (decimal)。
intval() 例子如圖:
注意事項
函數用法很簡單,重點是要自己嘗試過,才容易記住