PHP:包装内置函数(filter_输入)和可选参数

PHP:包装内置函数(filter_输入)和可选参数,php,filter-input,Php,Filter Input,因此,我知道使用PHP可以定义可选参数() 我想做的是: 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\u input内置函数相关的参数

因此,我知道使用PHP可以定义可选参数()

我想做的是:

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\u input
内置函数相关的参数,我知道$filter和$options是可选参数,为了使它们成为可选参数,我只需为它们指定一个默认值。但是,我不确定默认值应该是什么。我的猜测是$filter应该默认为
filter\u default
,这是有意义的,但是我找不到任何关于$options应该默认为什么的信息。

关于该方法的文档表明预期值是一个整数,因此它可能是
0

将$filter和$options都默认为NULL。它们对于
filter\u input()
也是可选的,所以当
filter\u input()
可以为您指定值时,为什么要给它们赋值呢?如果PHP曾经更新函数的默认值,那么您仍然是最新的

您的函数如下所示:

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

因为函数的options参数是er。。可选,可以是数组或位掩码,因此我怀疑使用

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

…将是理想的,除非有特定于应用程序的原因,否则这样做。

因此,如果我使用filter\u输入($type,$variable\u name,null,null),这将与filter\u输入($type,$variable\u name)相同?这完全相同。您要么拼出空值,要么暗示它们,但无论哪种方式都传递空值。