1
A
回答
1
这是因为你在32位系统上工作。
32bit php中最大的整数是2147483647
。这意味着之后(从2147483648
开始)这是一个溢出和包装。
你的数量比更大,所以结果是:(100000000165 % 2147483648) % 5
=>1215752357 % 5
=>2
增加:您可以通过建立自己的模函数和处理花车
$largeNumberThatBreaksInteger = 10000000000000000000165;
$modulus = $largeNumberThatBreaksInteger/PHP_INT_MAX - (int)($largeNumberThatBreaksInteger/PHP_INT_MAX) * PHP_INT_MAX;
// results in something like -9.9981352879506E+21. So you can compare it with an epsilon and know if it's 0 or not.
相关问题
- 1. Modulus Division
- 2. Modulus Visual Studio 2013
- 3. a.toString()代替(/ ^(\ d)$/“0 $ 1”)
- 4. SCRIPT_PATH = “$ {BASH_SOURCE [0]}” 坏替代
- 5. Ionic 2 getComponent替代
- 6. 替代{0},{1} .. {N}与给定的模板可变参数
- 7. Modulus托管选项
- 8. Fermat vs Mersenne as modulus
- 9. 泽西岛2替代ServletContextListener
- 10. 替代使用CURLOPT_SSL_VERIFYHOST,2
- 11. .NET 2/VB:RequestValidation =假替代
- 12. 使用MVC 2代替MVC1
- 13. Grizzly 2中的GrizzlyWebServer替代品2
- 14. 表行 - 给替代颜色
- 15. `java(0%2!= 0)== false`
- 16. 用“0”代替JSON字符串“”
- 17. CMake configure_file用1/0替代ON/OFF
- 18. $('form')[0]的替代选择是什么?
- 19. 用0代替最大行数
- 20. 使用参数/ {0}替代的速度
- 21. 以0代替NA就R程序
- 22. Modulus问题连接到Mongoose
- 23. 使用Modulus进行计算
- 24. 如何让Mathematica用1代替0到0的电源?
- 25. 替代计划让indexPath = NSIndexPath(forRow:0,切入口:0)
- 26. 为什么我不能用@_代替$ _ [0],$ _ [1],$ _ [2]来覆盖CORE :: open?
- 27. sqlite3的错误EXC_BAD_ACEES(代码= 2,地址= 0 * 0
- 28. 在excel中用“0”代替Nan值和空白单元格。我的代码也被替换文本为“0”
- 29. 日志(0^0)给出了0,但0 *日志(0)给出的NaN
- 30. 为什么在这里用1代替0代换日期?
在我的系统中它是'0'。你使用32位或64位版本的PHP? –
您可能正在运行一个32位PHP,其中最大的整数约为20亿。过去,数字环绕,100000000165变成1215752357。 – cHao