2015-02-23 33 views
1

我知道你可以使用func_num_args得到的傳入實際參數的個數。有沒有什麼辦法讓形式參數的數量形式參數的數量?獲取PHP

例子:

<?php 

function optional($a, $b = null) { 
    echo func_num_args(); 
} 

optional(1); // 1 
optional(1, 1); // 2 
optional(1, 1, 1); // 3 

我想辦法讓每個那些調用optional2,沒有硬編碼。

+1

你也許可以做這樣的事情使用PHP反映,但我沒有經驗瓦特/它 – MightyPork 2015-02-23 19:05:19

回答

3

一種方法是用ReflectionFunction,如:

function optional($a, $b = null) { 
    return (new ReflectionFunction(__FUNCTION__))->getNumberOfParameters(); 
} 
+0

謝謝 - 我不知道這些功能是一部分PHP 5中的核心。 – 2015-02-23 19:14:48