PHP 5.3 で導入された ?: 演算子は、条件演算子 (expr ? val_if_true : val_if_false) の簡略化された形式です。 。 5.3 では、中間部分 (val_if_true) を省略でき、次の構文になります:
<code class="php">expr ?: val_if_false</code>
これは次と同等です:
<code class="php">expr ? expr : val_if_false</code>
例:
<code class="php">$c = @$_GET['c'] ?: function() { echo 'Woah!'; };</code>
ここでは、?: 演算子を使用して $c 変数に値を割り当てます。 $_GET['c'] パラメータが存在し、呼び出し可能な場合は、$c に割り当てられます。それ以外の場合は、代わりに匿名関数が割り当てられます。
匿名関数
匿名関数も PHP 5.3 で導入されており、明示的に宣言せずに関数を定義できます。これらはラムダまたはコールバックとしてよく使用され、次の構文を使用して定義されます:
<code class="php">function() { // Code to execute }</code>
提供された例では、匿名関数は文字列「Woah!」をエコーするために使用されています。
以上がPHP 5.3 の ?: 演算子によって導入された簡略化された構文とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。