これは「なぜ機能するのですか」と「なぜそれを使用するのか、なぜそれを使用しないのか」という質問だけです。PHP「Ternary Like」ブール式の好奇心
私たちは皆、あまりにも三項演算
$var = (isset($i) ? true:false);
しかし、次の作品のようなPHP何かでを使用してPHP式を知っています。 (これは、3部の三ないが、それは2parts、バイナリ操作の以上である。)が実用的ではないかもしれない
$var = true;
isset($i) || $var = false;
:)が、より有用な構造そこで
isset($i) || exit();
あります(より良い芋見て)上記
共通 よりif(!isset($i)) exit();
しかし、他のと同じ結果を持っているでしょう10
私はめったにPHPで使用されるこのタイプの構造を見ません。なぜこれは機能しますか?それはなんと呼ばれていますか。なぜそれは教えられないのか、それ以上使われないのですか?それを使用することに悪い点はありますか?同じ方法で&&
を実際に使用する方法はありますか?
FYI、 '$ var =(isset($ i)?true:false);'は '$ var = isset($ i);のちょうど畳み込まれた同義語です; –
これは「論理的」または「論理的」と呼ばれます。それは怠け者です - 意味:最初の部分が真であれば、結果は常に* trueになるので、2番目の部分を評価する必要はありません。第2部分は、第1部分が真である場合にのみ評価される。詳細については、** [マニュアル](https://secure.php.net/manual/en/language.operators.logical.php)** –
@ Alvaroをご覧ください。それは三元構成の単なる例であった。 – skribe