PHP中有关长整数的一些操作教程


Posted in PHP onSeptember 11, 2019

前言

在PHP,数字类型只有int和float两种,它们的位数取决于系统,而且没有uint,所以跟其它系统通信的时候就有诸多不便。如果int溢出,则自动转换为float,用科学计数法来表示,并且小数点后只保留15位,之后的数据被四舍五入,这将对接下来的数据操作产生影响,比如说进制转换,进行运算等等都会出错。

对于PHP有:

int  : min~max: -9223372036854775808 ~ 9223372036854775807(~92亿亿)

float : min~max: -1.7976931348623E+308 ~ 1.7976931348623E+308(~1.8E308)

在这个时候我们就需要考虑用字符串形式来进行相关处理,如果一定要进行数学计算,就要用到BC Math(任意精度数学) Functions,在PHP手册中可以自行查阅:http://php.net/manual/zh/function.bcmod.php

此处举一个将长整数转化为二进制的简单例子,将2^128转化为二进制:由于php的进制转换函数也是有最大值限制的,所以在这里采用短除法,来转化为二进制,采用原始函数pow求幂次

PHP中有关长整数的一些操作教程

其输出结果如下,很显然精度不够,并且二进制是错误的

PHP中有关长整数的一些操作教程

正确表示:

PHP中有关长整数的一些操作教程  

输出结果:

PHP中有关长整数的一些操作教程

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
function.inc.php超越php
Dec 09 PHP
php项目打包方法
Feb 18 PHP
Linux下创建nginx脚本-start、stop、reload…
Aug 03 PHP
PHP封装分页函数实现文本分页和数字分页
Oct 23 PHP
十个PHP高级应用技巧果断收藏
Sep 25 PHP
php数组函数array_key_exists()小结
Dec 10 PHP
PHP的邮件群发系统phplist配置方法详细总结
Mar 30 PHP
yii2带搜索功能的下拉框实例详解
May 12 PHP
Yii框架中jquery表单验证插件用法示例
Oct 18 PHP
PHP实现按之字形顺序打印二叉树的方法
Jan 16 PHP
PHP实现压缩图片尺寸并转为jpg格式的方法示例
May 10 PHP
在Laravel5中正确设置文件权限的方法
May 22 PHP
PHP生成随机字符串实例代码(字母+数字)
Sep 11 #PHP
Yii框架参数配置文件params用法实例分析
Sep 11 #PHP
yii2.0框架使用 beforeAction 防非法登陆的方法分析
Sep 11 #PHP
Laravel框架验证码类用法实例分析
Sep 11 #PHP
PHP读取XML文件的方法实例总结【DOMDocument及simplexml方法】
Sep 10 #PHP
Laravel中正确地返回HTTP状态码方法示例
Sep 10 #PHP
PHP创建XML的方法示例【基于DOMDocument类及SimpleXMLElement类】
Sep 10 #PHP
You might like
Zend引擎的发展 [15]
2006/10/09 PHP
破解图片防盗链的代码(asp/php)测试通过
2010/07/02 PHP
PHP 实现explort() 功能的详解
2013/06/20 PHP
php调用nginx的mod_zip模块打包ZIP文件
2014/06/11 PHP
PHP中mysql_field_type()函数用法
2014/11/24 PHP
thinkPHP3.1验证码的简单实现方法
2016/04/22 PHP
PHP 验证身份证是否合法的函数
2017/02/09 PHP
几行代码轻松实现PHP文件打包下载zip
2017/03/01 PHP
laravel 输出最后执行sql 附:whereIn的使用方法
2019/10/10 PHP
javascript 事件处理示例分享
2014/12/31 Javascript
关于获取DIV内部内容报错的原因分析及解决办法
2016/01/29 Javascript
详解从新建vue项目到引入组件Element的方法
2017/08/29 Javascript
基于jQuery的$.getScript方法去加载javaScript文档解析
2017/11/08 jQuery
JavaScript变量声明var,let.const及区别浅析
2018/04/23 Javascript
JS删除String里某个字符的方法
2021/01/06 Javascript
JavaScript实现文件下载并重命名代码实例
2019/12/12 Javascript
微信小程序用户盒子、宫格列表的实现
2020/07/01 Javascript
python中pycurl库的用法实例
2014/09/30 Python
Python Tkinter实现简易计算器功能
2018/01/30 Python
python实现画一颗树和一片森林
2018/06/25 Python
Python用字典构建多级菜单功能
2019/07/11 Python
关于Pytorch MaxUnpool2d中size操作方式
2020/01/03 Python
Python如何用wx模块创建文本编辑器
2020/06/07 Python
详解Pycharm与anaconda安装配置指南
2020/08/25 Python
一款利用纯css3实现的超炫3D表单的实例教程
2014/12/01 HTML / CSS
Nike瑞士官网:Nike CH
2021/01/18 全球购物
英语专业学生的自我评价
2013/12/30 职场文书
小学三八妇女节活动方案
2014/03/16 职场文书
主持人演讲稿
2014/05/13 职场文书
施工安全标语
2014/06/07 职场文书
驾驶员安全责任书
2014/07/22 职场文书
2015大学自主招生自荐信范文
2015/03/04 职场文书
审美与表现自我评价
2015/03/09 职场文书
基督教追悼会答谢词
2015/09/29 职场文书
java项目构建Gradle的使用教程
2022/03/24 Java/Android
介绍一下28个JS常用数组方法
2022/05/06 Javascript