我最近在一個自定義MVC爲PHP工作,其中一個問題真的困擾着我: 我得到了控制器類,我想檢查是否獲取參數的類的某個函數,如果沒有,返回false 。Php Custom Mvc - 如何檢查函數是否獲取參數?
有沒有辦法做到這一點? 因爲我在php.net和谷歌搜索,沒有找到任何東西.... thanx!
我最近在一個自定義MVC爲PHP工作,其中一個問題真的困擾着我: 我得到了控制器類,我想檢查是否獲取參數的類的某個函數,如果沒有,返回false 。Php Custom Mvc - 如何檢查函數是否獲取參數?
有沒有辦法做到這一點? 因爲我在php.net和谷歌搜索,沒有找到任何東西.... thanx!
使用reflection:
$reflection = new ReflectionMethod ($class_name, $method_name);
$params = $r->getParameters();
$params
現在是ReflectionParameter對象
我可能是錯的,但在我看來,OP希望從函數外部看到函數/方法是否接受參數。 – Jeroen
我一開始也這麼想,但他說他想讓方法返回false。他會及時讓我們知道:) –
zi42,我的意思是什麼jeroen說,對不起的錯誤... –
使用功能func_get_args
function sum(){
$s=0;
foreach(func_get_args() as $a) $s+= is_numeric($a)?$a:0;
return $s;
};
print sum(1,2,3,4,5,6); // 21
能否請您澄清:你想從如果外部檢查某些方法需要參數?或者你是否想從方法內部檢查它是否接收到參數? –