PHP实现大数(浮点数)取余的方法


Posted in PHP onFebruary 18, 2017

本文实例讲述了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 相关文章推荐
mysql 字段类型说明
Apr 27 PHP
php生成的html meta和link标记在body标签里 顶部有个空行
May 18 PHP
解决PHP在DOS命令行下却无法链接MySQL的技术笔记
Dec 29 PHP
php设计模式 Observer(观察者模式)
Jun 26 PHP
php中使用接口实现工厂设计模式的代码
Jun 17 PHP
浅析memcache启动以及telnet命令详解
Jun 28 PHP
基于simple_html_dom的使用小结
Jul 01 PHP
php中 ob_start等函数截取标准输出的方法
Jun 22 PHP
两种php实现图片上传的方法
Jan 22 PHP
Yii2实现log输出到file及database的方法
Nov 12 PHP
PHP从尾到头打印链表实例讲解
Sep 27 PHP
php高性能日志系统 seaslog 的安装与使用方法分析
Feb 29 PHP
Zend Framework基于Command命令行建立ZF项目的方法
Feb 18 #PHP
完美解决php 导出excle的.csv格式的数据时乱码问题
Feb 18 #PHP
Zend Framework数据库操作技巧总结
Feb 18 #PHP
php基于ob_start(ob_gzhandler)实现网页压缩功能的方法
Feb 18 #PHP
PHP开发APP端微信支付功能
Feb 17 #PHP
php+webSoket实现聊天室示例代码(附源码)
Feb 17 #PHP
PHP中检索字符串的方法分析【strstr与substr_count方法】
Feb 17 #PHP
You might like
使用 MySQL 开始 PHP 会话
2006/12/21 PHP
ExtJS与PHP、MySQL实现存储的方法
2010/04/02 PHP
探讨各种PHP字符串函数的总结分析
2013/06/05 PHP
ueditor 1.2.6 使用方法说明
2013/07/24 PHP
基于php中使用excel的简单介绍
2013/08/02 PHP
php自定义函数截取汉字长度
2014/05/15 PHP
PHP中常用的输出函数总结
2014/09/22 PHP
PHP实现的文件操作类及文件下载功能示例
2016/12/24 PHP
Yii 实现数据加密和解密
2021/03/09 PHP
JS中字符串trim()使用示例
2015/05/26 Javascript
javascript实现的多个层切换效果通用函数实例
2015/07/06 Javascript
JS本地刷新返回上一页代码
2016/07/25 Javascript
bootstrap快速制作后台界面
2016/12/05 Javascript
详解如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件
2017/06/01 jQuery
bootstrap confirmation按钮提示组件使用详解
2017/08/22 Javascript
Angular.js中window.onload(),$(document).ready()的写法浅析
2017/09/28 Javascript
vue 手机物理监听键+退出提示代码
2020/09/09 Javascript
python使用sorted函数对列表进行排序的方法
2015/04/04 Python
python文件操作之目录遍历实例分析
2015/05/20 Python
浅谈插入排序算法在Python程序中的实现及简单改进
2016/05/04 Python
Python 正则表达式入门(初级篇)
2016/12/07 Python
python版opencv摄像头人脸实时检测方法
2018/08/03 Python
详解pandas.DataFrame中删除包涵特定字符串所在的行
2019/04/04 Python
Python实现最大子序和的方法示例
2019/07/05 Python
python自动分箱,计算woe,iv的实例代码
2019/11/22 Python
python db类用法说明
2020/07/07 Python
python给list排序的简单方法
2020/12/10 Python
Sasa莎莎海外旗舰店:香港莎莎美妆平台
2018/03/21 全球购物
Viking比利时:购买办公用品
2019/10/30 全球购物
遇到的Mysql的面试题
2014/06/29 面试题
小学开学寄语
2014/01/19 职场文书
《蒙娜丽莎之约》教学反思
2014/02/27 职场文书
材料员岗位职责
2014/03/13 职场文书
夫妻分居协议书范本
2014/11/28 职场文书
解决Laravel使用验证时跳转到首页的问题
2021/11/17 PHP
nginx配置之并发频次限制
2022/04/18 Servers