我有这个if语句:
if($_GET["angle_1"] > 39) {
$markers["###ANGLE###"] = "45";
} elseif($_GET["angle_1"] > 29 && $_GET["angle_1"] < 40) {
$markers["###ANGLE###"] = "35";
} elseif($_GET["angle_1"] < 30) {
$markers["###ANGLE###"] = "25";
} else {
$markers["###ANGLE###"] = "45";
}
有没有更好/更简单的方法来执行此检查,f.x。圆形将整数舍入到最接近的5,即28-> 25或34 - &gt;如果整数小于25,则它将始终为25,如果整数大于45,则它将始终为45,如果整数在30和40之间,则它将始终为35。
返回的值将用于显示图像。
编辑:
我有3张图片:image_25,image_35和image_45,因此需要进行舍入。
答案 0 :(得分:6)
假设$x
有数字:
$x = 39;
如果您想要最接近的5(39 - > 40)倍数:
$x = round($x / 5) * 5;
如果你想围捕(36 - > 40):
$x = ceil($x / 5) * 5;
如果你想向下舍入(39 - > 35):
$x = floor($x / 5) * 5;
定义$x
后,您可以使用以下内容确保其在25-45范围内:
$x = ($x > 45) ? 45 : ($x < 25) ? 25 : $x;
答案 1 :(得分:3)