這篇文章主要介紹了PHP實現大數(浮點數)取餘的方法,結合實例形式分析了php數學運算相關操作技巧,需要的朋友可以參考下
本文實例講述了PHP實作大數(浮點數)取餘的方法。分享給大家供大家參考,具體如下:
一般我們進行取餘運算第一個想到的就是用百分號%,但當除數是個很大的數值,超出了int範圍時,這樣取餘就不準確了。
php大數(浮點數)取餘函數:
/** * php大数取余 * * @param int or float $bn 除数 * @param int $sn 被除数 * @return int 余数 */ //大数(浮点数)取余方法 function Kmod($bn, $sn) { return intval(fmod(floatval($bn), $sn)); }
測試程式碼:
//大数(浮点数)取余方法 function Kmod($bn, $sn) { return intval(fmod(floatval($bn), $sn)); } //整数取余方法 function mod($bn, $sn) { return $bn%$sn; } //最大的int整数 $bn = PHP_INT_MAX; $sn = 11; var_dump($bn); var_dump(Kmod($bn, $sn)); var_dump(mod($bn, $sn)); //给最大的int整数加1 $bn = PHP_INT_MAX + 1; var_dump($bn); var_dump(Kmod($bn, $sn)); var_dump(mod($bn, $sn));
執行結果:
int 2147483647 int 1 int 1 float 2147483648 int 2 int -2
更多PHP實現大數(浮點數)取餘的方法相關文章請關注PHP中文網!