【发布时间】:2018-04-04 01:28:00
【问题描述】:
这是我有问题的地方......我希望当有人选择 $r 时显示“你是个笑话”,当有人选择 $p 时显示“你有我的尊重”,但它会继续打印“你有我的尊重” “不管怎样!
<?php
$r = ("silver"."bronze"."cooper");
$p = ("gold"."platinium"."diamond");
if($r == 'silver'.' bronze'.'cooper'){
echo "You Are a Joke";
} elseif ($p == "gold"."platinium"."diamond"){
echo "You Have My Respect";
} else {
echo "Your Rank Is *** Bro";
}
?>
【问题讨论】:
-
条件中的“青铜”中有一个额外的空格。这样做:
if($r == 'silver'.'bronze'.'cooper') { -
现在它只是打印你是个笑话""
-
您的示例中的逻辑是错误的。您正在检查 $r == "gold"."platinium"."diamond" 是否始终正确,因为您将其设置为该值。第二个条件也始终为真,但由于它使用“elseif”并且第一个条件始终为真,因此它永远不会触发。要么使用相同的变量来检查条件,要么引入第三个变量来保存选择并测试它。此外,“gold”.“platinum”.“diamond”与“goldplatinumdiamond”是一样的,所以我也不完全确定你在那里追求的是什么。