根据逗号后的数字使用 round 或 floor

Use round or floor depending the number after the comma

有什么解决办法:

7.1 => 7
7.5 => 7
7.8 => 8

所以我需要 round 数字或 floor 取决于逗号后的数字。

怎么做?

谢谢。

您应该能够使用常量 PHP_ROUND_HALF_DOWN,使 round 函数在进行到一半时向下舍入。

echo round(7.1, 0, PHP_ROUND_HALF_DOWN) . "\n";
echo round(7.5, 0, PHP_ROUND_HALF_DOWN) . "\n"; 
echo round(7.8, 0, PHP_ROUND_HALF_DOWN) . "\n";

输出:

7
7
8

来自manual

Round val down to precision decimal places towards zero, when it is half way there. Making 1.5 into 1 and -1.5 into -1.

PHP 演示:https://eval.in/427706

执行此操作的一种方法是将值拆分为小数点(或逗号?您的示例使用的是小数点)并测试尾随数字以查看您是要使用下限还是上限。

$test = 7.6
$arrayTest = explode(".",$test);
if(isset($arrayTest[1]) && $arrayTest[1] > 5) {
   //do something
} else {
   //do something else
}