如何在PHP的自定义函数中创建可选参数?

2022-08-31 00:21:58

例如,下面是一个快速的虚拟函数,可以总结它:

function dummy_func($optional)
{
    if (!isset($optional)
    {
        $optional = "World!";
    }
    $output = "Hello " . $optional;
    return $output;
}

但是,如果我运行此参数,则会得到一个缺少参数的E_WARNING。如何设置它,使其不标记错误?


答案 1

需要为可选参数指定默认值。而不是检查参数,只需给它一个你想要它的值,如果没有给出:isset

function dummy_func($optional = "World!")
{
    $output = "Hello " . $optional;
    return $output;
}

请参阅手册中有关函数参数的页面(尤其是默认参数值部分)。


答案 2

您可以通过使参数采用默认值:$optional"World!"

function dummy_func($optional="World!")
{
    $output = "Hello " . $optional;
    return $output;
}

现在调用函数时,如果你没有提供任何参数,将采用默认值,但如果你传递一个参数,将取传递的值。$optional$optional

例:

echo dummy_func();      // makes use of default value...prints Hello World!
echo dummy_func('foo!'); // makes use of argument passed...prints Hello foo!

推荐