これには特別な制御構造はありませんが、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]を、あなたのユースケースが必要です;)
1) '='は代入であり、比較ではありませんか? 2)すべての条件をOR演算子で結合したif文を書くか、それをすべてのif文に入れます。 – Rizier123
dupeはJS用ですが、PHP用にも同じです。 –
@MarcBこのdupeはPHP用です);それはJSとタグ付けされている可能性があります。私はOPが、彼が持っている3つの条件のうちの1つが真であるときに何かを出力したいと思うと思う(しかし、問題のボディとタイトルはちょっと議論の余地がある)。 – Rizier123