問題:
如何檢查函數是否作爲參數傳遞?如何檢查函數是否作爲參數傳遞?
特別是如果被傳遞的函數返回一個字符串等?
IE在下面的例子中我不希望htmlentities函數html被作爲參數傳遞,但我確實想要其他的東西。另外假設可能有多個參數需要稍後才能使用。
例子:
function html($tag,$content)
{
if(!is_callable($content)){$var=htmlentities($var, ENT_NOQUOTES, "UTF-8");}
return "<".$tag.">".$content."</".$tag.">";
}
echo html(html('Example','Example'),'Example');
這個例子似乎並沒有爲我工作。當它的一個函數時,我仍然會獲得htmlentitied內容。
您沒有向'foo()'傳遞函數,而是將內部'foo()'函數的返回值傳遞給外部'foo()',這是一個字符串。 – nickb 2012-07-27 15:19:09
即便如此,有沒有辦法檢查一個函數是否返回一個值?一些方法來檢測功能輸入? @nickb – 2012-07-27 15:20:00
可能的重複:http://stackoverflow.com/questions/2835627/php-is-function-to-determine-if-a-variable-is-a-function第二個答案應該可以解決您的問題 – nybbler 2012-07-27 15:22:29