【发布时间】:2020-02-24 08:16:56
【问题描述】:
据此wiki page:
37975227936943673922808872755445627854565536638199 × 40094690950920881030683735292761468389214899724061
结果应该是:
1522605027922533360535618378132637429718068114961380688657908494580122963258952897654000350692006139
我测试过:
<?php
$a = '37975227936943673922808872755445627854565536638199';
$b = '40094690950920881030683735292761468389214899724061';
echo "A: ".$a."\n";
echo "B: ".$b."\n";
$c = $a * $b;
echo "Result:\n".number_format($c, 0, '', '')."\n";
echo "Expected: \n1522605027922533360535618378132637429718068114961380688657908494580122963258952897654000350692006139";
?>
我得到了结果:
答:37975227936943673922808872755445627854565536638199
B: 40094690950920881030683735292761468389214899724061结果: 1522605027922533518260457400714874678658400574018662242210976145948887793656784833912073618129420288
预期: 1522605027922533360535618378132637429718068114961380688657908494580122963258952897654000350692006139
为什么 PHP 显示错误的结果?
有没有办法得到正确的结果?
【问题讨论】:
-
你为什么需要这个结果?
-
阅读更多关于
PHP_INT_MAX的信息。 stackoverflow.com/questions/35169951/… -
@AksenP 逻辑:2+2 不应该是 3 或 5。如果您不理解问题,那么为什么要否决和评论问题?
标签: php