直接上代碼吧:
# 向返回的閉包函數(shù)實(shí)例中,傳遞外部變量參數(shù) # 直接調(diào)用將不會(huì)輸出$txt的內(nèi)容 function demo(){ $txt = '我愛PHP'; # 1、function()內(nèi)的變量,為父類實(shí)例外部可傳遞的變量 # 2、use()內(nèi)的變量,為實(shí)例父類實(shí)例內(nèi)部可傳遞的變量 $func = function($str='') use($txt){ echo $txt; echo '<br/>'; echo $str; }; # 這里不再直接調(diào)用,而且是把實(shí)例返回 return $func; } # 測試一下 $res = demo(); // 函數(shù)返回實(shí)例 $obj = $res('我愛Delphi'); // 再通過res()調(diào)用,沒有這一步,將不會(huì)輸出$txt