2016-06-13 15 views
0
$Variable = "Dog" 

if($Variable == "Cat"){ 
    do stuff 
} 
elseif($Variable == "Goat"){ 
    do other stuff 
} 
elseif($Variable == "Cash"){ 
    Run some other stuff 
} 

と言うコードを書くにはどうすればよいのですか? 私の質問は、各ステートメントの中にecho "hi"と書かなければなりませんか?特定の方法で行を保存することはできますか?IFとELSEIF命令実行の場合にのみコードを実行

+2

1) '='は代入であり、比較ではありませんか? 2)すべての条件をOR演算子で結合したif文を書くか、それをすべてのif文に入れます。 – Rizier123

+0

dupeはJS用ですが、PHP用にも同じです。 –

+1

@MarcBこのdupeはPHP用です);それはJSとタグ付けされている可能性があります。私はOPが、彼が持っている3つの条件のうちの1つが真であるときに何かを出力したいと思うと思う(しかし、問題のボディとタイトルはちょっと議論の余地がある)。 – Rizier123

答えて

2

これには特別な制御構造はありませんが、echo 'hi';を3回書かなくてもこれを達成する方法はいくつかあります。それは部分的には味の問題であり、部分的には現実の状況である。たとえば、単に「こんにちは」と言っているのであれば、それはすべて問題ではありませんが、複雑なことをしたい場合は別の話です。いくつかの提案:

1.書き込み、別のif/else節

if ($variable == "Cat" || $variable == "Dog" || $variable == "Goat") { 
    echo 'hi!'; 
} 

2.他

$say_hi = true; 

if($Variable == "Cat"){ 
    // do stuff 
} else if($Variable == "Dog"){ 
    // do other stuff 
} else if($Variable == "Goat"){ 
    // do whatherever 
} else { 
    $say_hi = false; 
} 

if ($say_hi) { 
    echo 'hi'; 
} 

3.機能

を除外する

これは実際にあなたのユースケースに依存しますが、それは可能だろう。

function feed($animal) { 
    if ($animal == 'cat') { 
     // feed the cat 
     return true; 
    } else if ($animal == 'dog') { 
     // feed the dog; 
     return true; 
    } else if ($animal == 'goat') { 
     // feed the goat 
     return true; 
    } 
    return false; 
} 

if (feed('dog')) { 
    echo 'hi'; 
} 

if (feed('cat')) { 
    echo 'hi again'; 
} 

4.アレイ

この1つはまたあなたのユースケースに依存しますが、便利なことができるだけでなく

function cat_function() { 
    echo 'The cat says meaauw'; 
} 

function dog_function() { 
    // etc 
} 

function goat_function() { 
    // you got the point 
} 

$animals = array(
    'cat' => 'cat_function', 
    'dog' => 'dog_function', 
    'goat' => 'goat_function' 
); 

$my_pet = 'dog'; 

if (array_key_exists($my_pet, $animals)) { 
    call_user_func($animals[ $my_pet ]); 
} 

私はいくつか他の人の考えることができる[OK]を、あなたのユースケースが必要です;)

関連する問題