「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > PHP 5.3 の ?: 演算子とは何ですか?

PHP 5.3 の ?: 演算子とは何ですか?

2024 年 11 月 8 日に公開
ブラウズ:447

What\'s the ?: Operator in PHP 5.3?

PHP 5.3 の ?: 演算子

PHP 5.3 では、以前に使用できた条件演算子の圧縮形式である ?: 演算子が導入されました。 。元々、条件演算子は次の形式を取りました:

expr ? val_if_true : val_if_false

PHP 5.3 では、?: 構文につながる中間部分を省略できます。これは次と同等です:

expr ? expr : val_if_false

たとえば、次のコードは変数 $c が呼び出し可能かどうかをチェックします。そうでない場合は、例外がスローされます:

require __DIR__.'/c.php';
if (!is_callable($c = @$_GET['c'] ?: function() { echo 'Woah!'; }))
    throw new Exception('Error');
$c();

PHP 5.3 の匿名関数

?: 演算子とともに、PHP 5.3 では匿名関数も導入されました。質問とは裏腹に、匿名関数はしばらく存在していませんでした。これらは PHP 5.3 の新機能でした。匿名関数は名前なしで作成され、通常はコールバックとして、または他の関数への引数として使用されます。

上の例では、匿名関数は変数 $c に割り当てられます。パラメータはなく、「Woah!」と出力されます。呼ばれたとき。この匿名関数は $c 変数のデフォルト値として使用され、関数を実行する前に関数が呼び出し可能かどうかをチェックします。

リリースステートメント この記事は次の場所に転載されています: 1729305795 権利侵害がある場合は、[email protected] に連絡して削除してください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3