0
我需要快速嘲笑的對象,這樣當模板顯示:如何從內嵌對象調用匿名函數(Closure)?
$that->user->isAdmin()
它將返回true
。
我試圖用匿名函數施放一個數組對象:
$that = (object) ((array(
'user' =>
(object) (array(
'isAdmin' => function() {
return true;
}
(...)
但var_dump($that->user)
返回一個空閉幕(?):
object(stdClass)#3 (1) {
["isAdmin"]=>
object(Closure)#2 (1) {
["this"]=>
object(View)#1 (0) {
}
}
}
和$that->user->isAdmin()
收益直接調用它Call to undefined method stdClass::isAdmin()
。
如何重寫$that
以便能夠撥打$that->user->isAdmin()
?
可以用一種骯髒/拙劣的方式來完成,因爲它只是爲了一個嘲弄的目的。
棘手的部分是,它必須由'$但─>用戶> isAdmin正是被稱爲()' ,因爲這是一個模擬。我只能改變'$ that'對象。 –
那麼你不需要關閉,你需要一個名稱爲 – Federkun
的方法關於你的編輯 - 這個構造是否也是PHP7呢?因爲我得到'意外'類'(T_CLASS)' –