web-dev-qa-db-ja.com

省略形phpif {} ELSE IF {} else {}

phpのif、ELSE IF、elseステートメントの省略形を書く可能性はありますか?.

if/elseは明確ですが、elseifも使用したい場合の簡単な方法はありますか(スイッチを除く)?

if ($typeArray == 'date'){
    echo 'date';
} else if($typeArray == 'time'){
    echo 'time';
} else {
    echo 'text';
}

Elseifを含むネストされたifステートメントの短縮バージョンがある他に良い答えは見つかりませんでした。

あいさつティミ

9

あなたが探している 三項ステートメント

構文:

$condition ? $value_if_true : $value_if_false

ネストされた3項ステートメントの構文:

$a ? $b : ( $c ? $d : ( $e ? $f : $g ) )

警告ですが、ネストされた3項ステートメントは読みにくいため、ネストされていない3項ステートメントを使用することをお勧めします。

26

あなたはこれを見ることができます 三項演算子 。 if/elseがある場合は良好ですが、それ以上の場合は読みやすさが低下します。

代替構文 。この構文は、同じコードでhtml/phpを使用する場合に役立ちます。 if/foreach/whileの終わりを確認するのに役立ちます...

スイッチ/ケース 。おそらく、コードを投稿して、短縮できるかどうかを確認するのが最善です。

4
fdehanne