関数仕様編 その13 (匿名関数と無名関数 その3)

ヒューマンリソシア

2015年11月27日 17:23

※この記事は読者によって投稿されたユーザー投稿のため、編集部の見解や意向と異なる場合があります。 また、編集部はこの内容について正確性を保証できません。
ヒューマンリソシア株式会社はコラム「関数仕様編 その13 (匿名関数と無名関数 その3)」を公開しました。 匿名関数に続きまして、今回は「無名関数」を学んでいきましょう。 無名関数は、5.3.0で導入されたものになります。 無名関数(Anonymous functions)は、クロージャ(closures)とも呼称されます。 ちなみにクロージャの定義を「引数以外の変数は、実行時の環境ではなくて自身の定義時の環境で解決される」 とすると、PHPの無名関数は「だいたい」クロージャになります。 さて。 匿名関数と無名関数を併記して、無名関数をみていきましょう。 コードその1 匿名関数 $b = create_function(‘$a’, ‘echo $a . “\n”;’); $b(‘test’); 無名関数 $b = function($a) { echo $a . “\n”;}; $b(‘test’); コードその2 匿名関数 $a = array(3, 2, 5, 6, 1); usort($a, create_function(‘$a, $b’, ‘if ($a == $b) { return 0; } return ($a $b) ? -1 : 1;’)); var_dump($a); 無名関数 $a = array(3, 2, 5, 6, 1); この続きは以下をご覧くださいhttp://resocia.jp/column/1650/
この記事のキーワード

人気記事トップ10

人気記事ランキングをもっと見る