看看這個例子代碼:如何在參數爲數組或可調用時執行函數?
,我發現了錯誤:
Fatal error: Uncaught Error: Cannot use object of type Closure as array in C:\xampp\htdocs\dermaquality\test.php:11 Stack trace: #0 C:\xampp\htdocs\dermaquality\test.php(20): test(Object(Closure)) #1 {main} thrown in
$array = array(
'hello' => function() {
echo "HEllo world";
}
);
function test($func)
{
if (is_callable($func['hello'])) {
$func['hello']();
}
else {
$func();
}
}
echo "Executing 1 <br/>";
test($hello = function() {"Hello world";});
echo "Executing 2 <br/>";
test($array['hello']);
exit;
我怎麼能說$func
如果$func
是功能或$func['hello']
是功能?
謝謝。
嘗試改變,如果做反:if(is_callable($ func))$ func;其他$ func ['hello'](); –