我有一个项目,在该项目中,我的输入决定了要回显的数字的范围,但我还需要一个数字来回显更多文本。目前,我有一个if语句可以运行,但是第二次回显该数字。
for ($x = $var1; $x <= $var2; $x += $varInc) {
echo "<p>$x</p>";
if ($x == $varGhost){
echo "<p class='fas fa-ghost'></p>";
}
}
应该看起来与此类似:
您应该将代码更改为:
for ($x = $var1; $x <= $var2; $x += $varInc) {
if ($x == $varGhost){
echo "<p>$x - GHOST!</p>";
} else {
echo "<p>$x</p>";
}
}
我希望它能起作用:)
它没有按预期方式工作,因为无论如何,无论以下if
语句如何,第二行都回显数字$ x:
for ($x = $var1; $x <= $var2; $x += $varInc) {
echo "<p>$x</p>"; // this line echoes the number $x in any case
if ($x == $varGhost) {
echo "<p class='fas fa-ghost'></p>";
}
}
您应该像这样打印$ x之前检查它的值:
for ($x = $var1; $x <= $var2; $x += $varInc) {
if ($x == $varGhost) {
echo "<p class='fas fa-ghost'></p>";
}
else {
echo "<p>$x</p>"; // this line echoes the number $x ONLY if it isn't a ghost
}
}
无论如何,一种较短的编写方法:
for ($x = $var1; $x <= $var2; $x += $varInc)
echo ($x == $varGhost) ? "<p class='fas fa-ghost'></p>" : "<p>$x</p>"
希望有帮助:)