Belirli bir işleve geçirilen alınacak parametrelerin / sayısını bulmak için bir PHP işlevi var mı?
func_num_args() ve func_get_args() argümanların değerini almak için
Belgeleri:
<?php
function foo()
{
$numargs = func_num_args();
echo "Number of arguments: $numargs\n";
}
foo(1, 2, 3);
?>
Yukarıdaki örneğin çıktısı:
Argümanların sayısı: 3
func_number_args () çağrılan yalnızca işlevi ile sınırlıdır. Çalışma zamanında dinamik fonksiyonu dışında fonksiyonu hakkında bilgi elde edemez.
Eğer zamanında bir fonksiyonu hakkında bilgi elde etmek için çalışıyorsanız, ben Yansıma yaklaşımı öneriyoruz:
if(function_exists('foo'))
{
$info = new ReflectionFunction('foo');
$numberOfArgs = $info->getNumberOfParameters(); // this isn't required though
$numberOfRequiredArgs = $info->getNumberOfRequiredParameters(); // required by the function
}