匿名関数はクロージャとも呼ばれ、名前を指定せずに関数を一時的に作成できます。
匿名関数の利点
1. 非匿名関数は、定義時に関数オブジェクトとスコープ オブジェクトを作成します。将来呼び出されない場合は、それらも作成されます。スペースを占有します
2. 匿名関数は、呼び出されたときにのみ関数オブジェクトとスコープ オブジェクトを作成します。メモリを節約するために、呼び出し後すぐに放してください。
php での匿名関数の使用
1. コールバック関数として使用します
<?php echo preg_replace_callback('~-([a-z])~', function ($match) { return strtoupper($match[1]); }, 'hello-world'); // 输出 helloWorld
2. 変数値を割り当てます
<?php $greet = function($name) { printf("Hello %s\r\n", $name); }; $greet('World'); $greet('PHP');
出力 :
3. 親スコープから変数を継承
<?php $message = 'hello'; // 没有 "use" $example = function () { var_dump($message); }; echo $example(); // 继承 $message $example = function () use ($message) { var_dump($message); }; echo $example();
出力 :
以上がPHP 匿名関数は何に使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。