【PHPコード簡略化計画②】ANDとORで条件分岐

PHP
composita / Pixabay
この記事は約1分で読めます。

こんにちは。
やらしみずです。

前回と同様に、ifを使わないでAND、ORのみで条件分岐をする方法をご紹介します。
前回の記事:エルビス演算子が強い

普通にif文を書いてみる

AND,ORを使って書いてみる

※右辺には、echo、returenなどは使えないので注意

見たとおりかもしれませんが、左辺の真偽値を判断して、右のコードを実行します。
ANDの場合は左辺がtrueだったら右辺を実行、
ORの場合は左辺がfalseだったら右辺を実行という感じですね。

一応if文を使っているときよりも若干スマートになっていると思います。

ただ変数に値を代入するだけであれば、前回のエルビス演算子のほうが使い勝手がいいので、ANDとORを使うのはretrun文の無い関数などを使うといいかもしれません。(じゃあそれで書けよって話ですが,,,)

最後に

コードゴルフはもっとえげつない省略の仕方をするそうなので勉強してみたいです!!

コメント

  1. katayamahide より:

    勉強になりました。
    普通のif文のところが両方trueになるので、2つ目は ! isset が正しいのではないでしょうか?

    • やらしみず より:

      変数をfoo,varと2つ定義してるので、!issetでもissetでもどちらでも良いですね。

      ただ、たしかにに変数を一つ($foo=”test”とか)にしておいて、!issetを使ったほうがわかりやすいですね。
      ご指摘ありがとうございます。もっとわかりやすく修正しようと思います。