php как определить, был ли округлен () - PullRequest
0 голосов
/ 05 мая 2018

Допустим, у меня есть такие переменные:

$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 голосов
/ 05 мая 2018

Мой ответ: 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;
0 голосов
/ 05 мая 2018

Например, вы можете сделать:

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
0 голосов
/ 05 мая 2018

Один из подходов состоит в том, чтобы сохранить округленные значения в двух дополнительных переменных и вывести знак следующим образом:

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