如何在PHP中执行此数学操作?

如何在PHP中执行此数学操作?,php,Php,我正在尝试执行此操作: $math = 1.30644 - 1.3063 我希望结果是这样的差异: 1.4(即64,4-63),因为我处理的是PIP。我怎样才能达到这个结果 我尝试的是: $math = 1.30644 - 1.3063 echo $math; // output -0.3063 I want it to output 1.4 你不能把产量乘以10000吗 echo (1.30644 - 1.3063) * 10000; 这应该完全符合您的要求: $math = 1.30

我正在尝试执行此操作:

$math = 1.30644 - 1.3063
我希望结果是这样的差异:

1.4(即64,4-63),因为我处理的是PIP。我怎样才能达到这个结果

我尝试的是:

$math = 1.30644 - 1.3063

echo $math; // output -0.3063 I want it to output 1.4

你不能把产量乘以10000吗

echo (1.30644 - 1.3063) * 10000;

这应该完全符合您的要求:

$math = 1.30644 - 1.3063;
while ($math < 1) {
    $math *= 10;
}
var_dump($math);
//float(1.4000000000003)

您可以使用此功能来简化:

function diff($a, $b)
{
    return round(($a - $b) * 10000, 2);
}

$diff = diff(1.30644, 1.3063);
echo $diff; //Output: 1.4
请注意,PHP是松散类型,因此使用int或double数字并不重要

如果你愿意

diff(60.430, 60.470)
然后你会得到-400,如果你希望所有数字都以10.000为基数,这是正确的。点的数量无关紧要

如果你想得到更好的答案,那么你必须改进你的问题。

试试这个

$a = 1.30644;
$b = 1.3063;
$c = $a-$b;
echo $c;
或者如果你想从正确的使用中删除三个零

echo $c*10000;
您可以直接使用

$a= (1.30644-1.3063)*10000;
echo $a;


你到底想干什么
1.30644-1.3063=0.000140000000003
将输入乘以10000?根据您在一些答案中的评论,您希望根据结果中的小数位数进行不同的计算。这是可以的,但是你需要提供更多的例子(最好至少3个),没有办法根据你提供的单个例子来推断。如果我不知道小数点的数量(如何使其成为动态的?)PHP是松散类型的,所以它并不真的重要。如果我不知道小数点的数量呢(我如何使其动态?@user2344630你的意思是什么?你想舍入到不同的小数位数?还是固定的小数位数?我想能够使用相同的代码执行这60.43-60.47和这1.4232-1.4212(我不知道点后的位数)@用户2344630那么每个减法的答案是什么呢?因为它显然不是实际的减法。点的数量无关紧要。如果数字在点后有不同的位数呢(例如,42.12不是1.3322难道没有一个代码可以在所有情况下使用吗?那没关系。舍入函数没有说明函数中可以包含什么,而是说明结果如何。diff(60.43,60.47)如果结果以10.000为基数,则会产生-400,这是一个差值,并产生一个负数。如果结果大于1,这是否会根据数字的大小对差值产生错误的想法?在这个概念中,10和9之间的差值不应该也是1。@Jonast92在
100-63
中,
$math
数组应该是
37
,我认为这是正确的。作者的问题很不清楚,但我猜测所有结果应该在同一个基本系统中,因为现在你可以通过输入两个不同的数字得到37,其中一个小于1,另一个远远大于1,不,如果你把它乘以1000,你会得到:0.14,否则0.00014他不想要0.14,他想要1.14对不起我的错:P谢谢你:D我修好了
echo $c*10000;
$a= (1.30644-1.3063)*10000;
echo $a;