2017-10-23 10 views
-6

これは私がprobを持っている場所です...誰かが$ rを選んで "You Are Joke"を表示したいと思います。あなたは私の尊敬を持っていますか?私のifステートメントで何かが間違っています

<?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"; 
} 
?> 
+0

を解決する' bronze'からextra spaceを削除します。これは以下のようになります: 'if($ r == 'silver'。 'ブロンズ' 'クーパー'){' – ishegg

+0

あなたは冗談です " – iamaliyazdani

+0

あなたの例のロジックが間違っています。あなたは$ r == "gold"かどうかをチェックしています。 "platinium"。 "diamond"。これはその値に設定しているので常に真です。第2の条件も常に真ですが、 'elseif'を使用しているため、最初の条件は常に真ですが、決して発生しません。 同じ変数を使用して条件を確認するか、選択肢を保持してテストするための3番目の変数を導入します。 「金」「プラチナ」「ダイヤモンド」は「金プラチナダイヤモンド」とまったく同じものなので、後で何があったのか全く分かりません。 – HairMachine

答えて

0

ので、それはあなたが条件で、「ブロンズ」の余分なスペースを持っているあなたの問題

<?php 
     $r = ("silver"."bronze"."cooper"); 
     $p = ("gold"."platinium"."diamond"); 
     if($r == 'silver'.'bronze'.'cooper'){ //remove extra space 
     echo "You Are a Joke"; 
     } elseif ($p == "gold"."platinium"."diamond"){ 
     echo "You Have My Respect"; 
     } else { 
     echo "Your Rank Is *** Bro"; 
     } 
    ?> 
+0

私は今でしたが、今は印刷して "あなたは冗談です" – iamaliyazdani

+0

bcoz状態が真になるので最初のメッセージが毎回表示されます – Bhargav

+0

これを防ぐには何ができますか? – iamaliyazdani

関連する問題