php如何检测round()是否已被舍入

时间:2018-05-05 20:29:52

标签: php rounding

我们说我有这样的变量:

$X = 5;
$Y = 12.6784543287;

如果我使用round(),我会得到类似的东西

round($X,0) // 5
round($Y,0) // 13

如何创建一个条件来检测圆是否已被截断以适应符号" =" /"≈" ?

echo 'x'.round($X,0) // x = 5
echo 'y'.round($Y,0) // y ≈ 13

3 个答案:

答案 0 :(得分:1)

一种方法是将舍入值保存在另外两个变量中,并输出如下符号:

<?= $yRounded === $Y ? '=' : '≈' ?>

答案 1 :(得分:1)

你可以这样做:

function printTruncated($val)
{
    if($val == round($val, 0))
        return ' = ' . round($val, 0);
    else
        return ' ≈ ' . round($val, 0);
}

echo 'x' . printTruncated($X) // x = 5
echo 'y' . printTruncated($Y) // y ≈ 13

答案 2 :(得分:0)

我的回答:D

<?php
$X = $X1 = 5;
$Y = $Y1 = 12.6784543287;
echo ( $X == (round($X1,0)) ) ? 'X='.$X : 'X≈'.$X;
echo ( $Y == round($Y1,0) ) ? 'Y='.$Y : 'Y≈'.$Y;