匿名函式是大部份程式語言都會有的功能。
開發時會遇到函式使用的次數極少(1次以上),想要加入lib中又怕到時候又忘記這支函式到底用在哪裡,感覺很雞肋!
透過匿名函式可以克服這方面的問題。

基本用法:

<?php
	//print
	$sum = function($a, $b){ print $a + $b; };
	//輸出3
	$sum(1,2);

	//return
	$sum = function($a, $b){ return $a + $b; };
	//輸出3
	print $sum(1,2);
?>

透過use,引用程式中的變數

<?php
	$a = 1;
	$b = "hello";
	$callback = function($num1, $str1) use ($a, $b){
					 $a += $num1;
					 $b .= $str1;
					 print $a . " " . $b;
				};
	//輸出2 hello Tom
	$callback(1,"Tom");	
?>
Categories: PHP