PHP: встроенная функция обертывания (filter_input) и дополнительные параметры - PullRequest
0 голосов
/ 21 декабря 2010

Итак, я знаю, что с помощью PHP вы можете определять необязательные параметры ( StackOverflow Questions ).

Я пытаюсь сделать следующее:

function myFunc($a, $b, $c, $type, $variable_name, $filter, $options)
{
   $value = filter_input($type, $variable_name, $filter, $options);

   //Do something with $a, $b, $c, and $value
}

Поскольку я передаю параметры, относящиеся к встроенной функции filter_input, я знаю, что $ filter и $ options являются необязательными параметрами, и чтобы сделать их необязательными, я просто назначил бы им значение по умолчанию.Но я не уверен, каким должно быть это значение по умолчанию.Я предполагаю, что $ filter должен по умолчанию FILTER_DEFAULT, что имеет смысл, но я не могу найти никакой информации относительно того, что $ options должен по умолчанию.

Ответы [ 3 ]

2 голосов
/ 21 декабря 2010

По умолчанию и $ filter, и $ options равны NULL.Они также являются необязательными для filter_input(), поэтому зачем присваивать им значение, когда filter_input() сделает это за вас?Если бы PHP когда-либо обновлял настройки по умолчанию для функции, вы бы тоже были текущими.

Ваша функция будет выглядеть так:

0 голосов
/ 21 декабря 2010

В качестве аргумента параметров для функции filter_input это er .. необязательно и может быть либо массивом, либо битовой маской, поэтому я подозреваю, что используется ...

function myFunc($a, $b, $c, $type, $variable_name, $filter, $options=null) {
    ...

..было бы идеально, если только у приложения нет особых причин поступать иначе.

0 голосов
/ 21 декабря 2010

Документация по методу filter_input предполагает, что ожидаемое значение является целым числом, поэтому оно, вероятно, будет 0.

...