第一个输出结果的IF语句的结果。我想使用两个输出值来操纵第二条IF语句,以获取$loadedWeightUSTons
或$emptyWeight
的值,只有一个在任何给定时间返回一个值。我尝试在每个if或ifelse语句中使用$loadWeightUSTons or $emptyWeight
都无济于事。有人可以帮忙吗?
第一份IF声明
if ($loadWeightUSTons == 0) {
echo "E";
}else {
echo "L";
}
echo "</td>";
echo "<td>";
if ($loadWeightUSTons == 0){
$emptyWeight = "Not Found!";
foreach($railunit->railUnit as $ru) {
if((string)$ru->rvXMLfilename == $rvXMLfilename){
$emptyWeight = (string)$ru->unitWeight;
}
}
echo $emptyWeight;
}else{
echo $loadWeightUSTons;
}
第二个IF声明
if ($loadWeightUSTons <= 10) {
echo "X";
} elseif ($loadWeightUSTons <= 20){
echo "XX";
} elseif ($loadWeightUSTons <= 30){
echo "XXX";
} elseif ($loadWeightUSTons <= 40){
echo "XXXX";
} elseif ($loadWeightUSTons <= 50){
echo "XXXXX";
} elseif ($loadWeightUSTons <= 60){
echo "XXXXXX";
} elseif ($loadWeightUSTons <= 70){
echo "XXXXXXX";
} elseif ($loadWeightUSTons <= 80){
echo "XXXXXXX";
} elseif ($loadWeightUSTons <= 90){
echo "XXXXXXXX";
} elseif ($loadWeightUSTons <= 100){
echo "XXXXXXXXX";
} elseif ($loadWeightUSTons <= 110){
echo "XXXXXXXXXX";
} elseif ($loadWeightUSTons <= 120){
echo "XXXXXXXXXXX";
} elseif ($loadWeightUSTons <= 130){
echo "XXXXXXXXXXXX";
} elseif ($loadWeightUSTons <= 140){
echo "XXXXXXXXXXXXX";
} elseif ($loadWeightUSTons <= 150){
echo "XXXXXXXXXXXXXX";
} else{
echo "Error!";
}
答案 0 :(得分:0)
我最终接受了上面的建议,并将其应用于下面的IF声明中。它取代了笨重的if
elseif
语句。
if ($loadWeightUSTons == 0){
echo str_repeat('X', ceil($emptyWeight/10));
}else{
echo str_repeat('X', ceil($loadWeightUSTons/10));
}
答案 1 :(得分:0)
if ($loadWeightUSTons > 150) {
echo "Error!";
} else {
echo str_repeat("X",ceil($loadWeightUSTons/10));
}
但是我可能建议仅按原样输出数字。
拥有那些XXX
并不比数字多。
这将带来更好的用户体验。
尤其是如果您将该数字限制为150,并且在那里有诸如1 234 567 890
之类的整数值。