php閉包使用例子

2021-09-07 17:53:25 字數 1170 閱讀 7877

一.依據閉包實現乙個容器

classdi 

public

function get($id

) }

class

user

public

function

getusername()

} $di = new

di(); //

在此使用了閉包,所以實際上並不會例項化user類,只有在後面get的時候才會例項化

$di->set('a', function

());

var_dump($di->get('a')->getusername());

class

cart

public

function getquantity($product

)

public

function gettotal($tax

) ;

array_walk($this->products, $callback

);

return

round($total, 2);

}} $cart = new

cart();

$cart->add('butter', 1);

$cart->add('milk', 5);

echo

$cart->gettotal(0.05);

class

grid

public

function addcolumn($name, $value

)

public

function

build()

public

function

__tostring()

;array_walk($this->attribute, $call);

return

$str

; }}

$grid = new

grid(

//傳入閉包函式,帶引數

function($grid

) );

echo

$grid;

關聯文章:

**

php含有閉包特殊使用

討論寫法,形式如下,呼叫以閉包為引數的函式 getvalues attrib 含義。以下是乙個獲取 attribs陣列鍵為value的值edward複雜寫法。這種算是自找虐吧。attribs name first name value edward ex function t use attribs...

JS閉包的最簡單例子使用

function foo function bar fn 1000 wait hello,closure 將乙個內部函式 名為 timer 傳遞給 settimeout timer 具有涵蓋 wait 作用域 的閉包,因此還保有對變數 message 的引用。wait 執行 1000 毫秒後,它的內...

php閉包學習

提到閉包就不得不想起匿名函式,也叫閉包函式 closures 貌似php閉包實現主要就是靠它。宣告乙個匿名函式是這樣 func function value func 輸出test 閉包函式當成變數使用 閉包函式當作變數來使用 func 1 function value func 2 functio...