這篇文章主要介紹了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中文網!