ReflectionFunctionAbstract::getNumberOfRequiredParameters
(PHP 5 >= 5.0.3)
ReflectionFunctionAbstract::getNumberOfRequiredParameters — Получает количество обязательных аргументов
Описание
public int ReflectionFunctionAbstract::getNumberOfRequiredParameters
( void
)
Получение числа обязательных аргументов в определении функции.
Внимание
К настоящему времени эта функция еще не была документирована; для ознакомления доступен только список аргументов.
Список параметров
У этой функции нет параметров.
Возвращаемые значения
Число обязательных аргументов.
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Расширения, относящиеся к переменным и типам
- Reflection
- Функция ReflectionFunctionAbstract::__clone() - Копирующий конструктор
- Функция ReflectionFunctionAbstract::getClosureScopeClass() - Returns the scope associated to the closure
- Функция ReflectionFunctionAbstract::getClosureThis() - Возвращает указатель this замыкания
- Функция ReflectionFunctionAbstract::getDocComment() - Получает документируемый комментарий
- Функция ReflectionFunctionAbstract::getEndLine() - Получает номер строки завершения описания функции
- Функция ReflectionFunctionAbstract::getExtension() - Получает информацию о расширении
- Функция ReflectionFunctionAbstract::getExtensionName() - Получение имени расширения
- Функция ReflectionFunctionAbstract::getFileName() - Получает имя файла
- Функция ReflectionFunctionAbstract::getName() - Получает имя функции
- Функция ReflectionFunctionAbstract::getNamespaceName() - Получение имени пространства имен
- Функция ReflectionFunctionAbstract::getNumberOfParameters() - Получает количество аргументов
- Функция ReflectionFunctionAbstract::getNumberOfRequiredParameters() - Получает количество обязательных аргументов
- Функция ReflectionFunctionAbstract::getParameters() - Получает аргументы
- ReflectionFunctionAbstract::getReturnType
- Функция ReflectionFunctionAbstract::getShortName() - Получает короткое имя функции
- Функция ReflectionFunctionAbstract::getStartLine() - Получает начальный номер строки
- Функция ReflectionFunctionAbstract::getStaticVariables() - Получает статические переменные
- ReflectionFunctionAbstract::hasReturnType
- Функция ReflectionFunctionAbstract::inNamespace() - Проверяет, находится ли функция в пространстве имен
- Функция ReflectionFunctionAbstract::isClosure() - Проверяет, является ли функция замыканием
- Функция ReflectionFunctionAbstract::isDeprecated() - Проверяет, является ли функция устаревшей
- Функция ReflectionFunctionAbstract::isGenerator() - Returns whether this function is a generator
- Функция ReflectionFunctionAbstract::isInternal() - Проверяет, является ли функция внутренней
- Функция ReflectionFunctionAbstract::isUserDefined() - Проверяет, является ли функция определенной пользователем
- ReflectionFunctionAbstract::isVariadic
- Функция ReflectionFunctionAbstract::returnsReference() - Проверяет, что функция возвращает ссылку
- Функция ReflectionFunctionAbstract::__toString() - Преобразование в строку
Коментарии
<?php
namespace ExampleWorld;
// The Class
class helloWorld {
/* Method with two required arguments */
public function requiredTwoArguments ( $var1, $var2 ) {
// Some code ...
}
/* Method with two arguments, but just one is required */
public function requiredOneArgument ( $var1, $var2 = false ) {
// Some code ...
}
}
$r = new \ReflectionMethod ( 'ExampleWorld\helloWorld', 'requiredTwoArguments' );
echo $r->getNumberOfRequiredParameters ();
$r = new \ReflectionMethod ( 'ExampleWorld\helloWorld', 'requiredOneArgument' );
echo $r->getNumberOfRequiredParameters ();
// Output: 2 1
It's interesting to note that this function will treat optional parameters that come before a required parameter as required too. This is good since it allows you to verify that the function will be receiving enough parameters for the it to work, regardless where they are located.
<?php
class MyTest() {
public function test($a = null, $b) {}
public function test2($a = null, $b, $c = null) {}
}
//Create the reflection
$r = new \ReflectionMethod('MyTest', 'test');
$r2 = new \ReflectionMethod('MyTest', 'test2');
//Verify the numbers
echo 'Test: ' . $r->getNumberOfRequiredParameters()); //Output: 2
echo 'Test2: ' . $r->getNumberOfRequiredParameters()); //Output: 2
?>