PHP整数取余返回负数的相关解决方法

 更新时间:2014年05月15日 17:53:49   作者:  
PHP整数取余返回负数对于编程经验不足的新手来说还是比较头疼的一件事。希望通过本文介绍的内容,大家能充分掌握这一解决办法

PHP语言虽然功能强大,但并不代表其没有缺点,在编写代码的过程中未免会遇到一些让人头痛的问题。下面我们将为大家介绍有关PHP整数取余返回负数的解决办法。

我们先来看个例子.

复制代码 代码如下:

$res = 16244799483;
echo $res%9999999;
// 输出结果为 -5069794, 正确的结果应该是4801107

其实这也算上PHP一个BUG吧.最主要是PHP是个弱类型语言.他内置了机器来判断用户的类型.

但是机器毕竟是机器.也有判断出错的时候.就像上面.所以这时候我们就需要人工干预下.

所以我就想到要用下面的方法来解决PHP整数取余返回负数的问题.

复制代码 代码如下:

$res = floatval(16244799483);
var_dump($res % 9999999);

我们看到结果还是错误的-5069794.

但是值得注意的是返回是一个int类型的.

详细思考了一下.PHP整数取余返回负数的问题是这样处理的.

PHP取余默认为整数的.

而且当你定义$res = 16244799483;

其实就已经溢出了.所以要加上强制类型转换.变成float类型.

但是这样还不够.因为%这个取模计算还是针对整数的.

所以我们需要一个函数fmod.是针对float类型的.

所以最终PHP整数取余返回负数的解决办法为:

复制代码 代码如下:

$res = floatval(16244799483);
var_dump(fmod($res,9999999));

这样我们就解决了PHP整数取余返回负数这个问题.:)

相关文章

  • PHP之COOKIE支持详解

    PHP之COOKIE支持详解

    建立商业站点或者功能比较完善的个人站点,常常需要记录访问者的信息,在PHP中提供了两种方便的手段:session和cookie功能.为了永久的保持用户信息,则cookie是最便捷的手段.在这里我将为大家详细的讲解cookie的功能及使用方法.
    2010-09-09
  • 详解Go与PHP的语法对比

    详解Go与PHP的语法对比

    本文主要介绍了Go和PHP的语法对比,感兴趣的同学,可以参考下,思考下它们之间的区别。
    2021-05-05
  • PHPExcel实现的读取多工作表操作示例

    PHPExcel实现的读取多工作表操作示例

    这篇文章主要介绍了PHPExcel实现的读取多工作表操作,结合实例形式分析了PHPExcel针对Excel多个sheet工作表的读取、解析相关操作技巧,需要的朋友可以参考下
    2020-04-04
  • PHP输出图像imagegif、imagejpeg与imagepng函数用法分析

    PHP输出图像imagegif、imagejpeg与imagepng函数用法分析

    这篇文章主要介绍了PHP输出图像imagegif、imagejpeg与imagepng函数用法,结合实例形式较为详细的分析了imagegif()、imagejpeg()、imagepng()和imagewbmp()函数的功能、参数含义及使用技巧,需要的朋友可以参考下
    2016-11-11
  • phpExcel中文帮助手册之常用功能指南

    phpExcel中文帮助手册之常用功能指南

    这篇文章主要介绍了phpExcel中文帮助手册之常用功能指南以及示例分享,需要的朋友可以参考下
    2014-08-08
  • PHP+MYSQL中文乱码问题

    PHP+MYSQL中文乱码问题

    这篇文章主要汇总介绍了几种解决PHP+MYSQL中文乱码问题的方法,十分的实用,有需要的小伙伴可以参考下。
    2015-07-07
  • TP5多入口设置实例讲解

    TP5多入口设置实例讲解

    这篇文章主要介绍了TP5多入口设置实例讲解,步骤比较简洁明了,有需要的可以参考下
    2020-12-12
  • php表单提交与$_POST实例分析

    php表单提交与$_POST实例分析

    这篇文章主要介绍了php表单提交与$_POST,实例分析了表单提交中$_POST变量的具体内容形式,有助于更好的掌握表单提交中的数据操作技巧,需要的朋友可以参考下
    2015-01-01
  • php文件读取方法实例分析

    php文件读取方法实例分析

    这篇文章主要介绍了php文件读取方法,实例分析了php读取文件行、字符、固定位置等的相关技巧,需要的朋友可以参考下
    2015-06-06
  • php array_walk array_map array_filter区别案例详解

    php array_walk array_map array_filter区别案例详解

    这篇文章主要介绍了php array_walk array_map array_filter区别案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-09-09

最新评论