@khodos_dmitry

Можно ли в PHP определить сколько аргументов требует функция?

Есть функция:
function func($arg1, $arg2) {
}
args_func(func); // должно вернуть 2
  • Вопрос задан
  • 134 просмотра
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
https://www.php.net/manual/ru/class.reflectionfunc...
function func($arg1, $arg2 = null) {}

$refFunc = new ReflectionFunction('func');
print $refFunc->getNumberOfParameters(); // 2
print $refFunc->getNumberOfRequiredParameters(); // 1
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@rPman
Из вне контекста определить количество параметров нельзя, потому что с 5.6 версии появилась поддержка переменного количества аргументов variadic functions

Внутри можно - func_num_args

p.s. так что лучший вариант - парсить исходники
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы