我正在使用多个 IF 语句,并且想知道如何将它们放入数组中。
IF 语句
if ($totalEXP < $l1) echo "1";
if ($totalEXP < $l2) echo "2";
正如你所看到的,除了 $l1 和最终的 echo 之外,还有相同的内容 我将使用大约 100 个 IF 语句,有没有办法将其放入数组中以节省大量编码?
我知道我应该使用 ELSEIF 语句
<?php
if ($totalEXP < $l1) {
echo "1";
} elseif ($totalEXP < $l2) {
echo "2";
} else {
echo "MAX";
}
?>
但为了简单起见,我决定了我所采取的路线。
遗憾的是,我没有尝试太多来让它工作,因为我不知道它是否可能。
最佳答案
是的,当然。
将关卡数据放入数组中
$levels = array(
1 => $l1,
2 => $l2,
...
);
然后循环
$pleyer_level = 1;
foreach($levels as $level => $xp)
if($totalEXP > $xp)
$player_level = $level;
当您知道循环的工作已完成时,在循环中放置一个中断也是明智的,这样您就不会无意义地迭代
$pleyer_level = 1;
foreach($levels as $level => $xp)
if($totalEXP > $xp)
$player_level = $level;
else
break;
关于php - 如果在数组内,则使用 PHP 并将 value+1 增加到限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25958314/