函数声明中的默认 NULL
Default NULL in function declaration
为什么我们需要在函数中将参数 $slug
声明为默认参数 NULL
?
如果我们不将其声明为默认值 NULL
,会有什么变化?
在我看来,一切都不会改变:
public function view($slug = NULL)
{
$data['news_item'] = $this->news_model->get_news($slug);
if (empty($data['news_item']))
{
show_404();
}
...
使参数可选。
在 PHP 中创建函数时,可以提供默认参数,这样当参数未传递给函数时,它仍然可以在函数中使用预定义值。这些默认值也可以称为可选参数,因为它们不需要传递给函数。
假设你有这样的功能;
function testFunction($a = 1)
{
return $a;
}
// When u call it
echo testFunction(); // prints 1
echo testFunction(2); // prints 2
您可以选择设置默认值(在您的情况下为 NULL
),这将使该参数成为可选的,而不是必需的。这就是为什么它在您看来是不必要的,您可能只使用参数调用此函数。
你可以查一下here。
无默认参数:
当你用这个写函数时 header
public function view($slug)
调用此函数时必须传递一个参数。
否则这将引发错误。
默认参数:
public function view($slug = NULL)
有了这个 header 你可以但不必交出一个参数。
为什么我们需要在函数中将参数 $slug
声明为默认参数 NULL
?
如果我们不将其声明为默认值 NULL
,会有什么变化?
在我看来,一切都不会改变:
public function view($slug = NULL)
{
$data['news_item'] = $this->news_model->get_news($slug);
if (empty($data['news_item']))
{
show_404();
}
...
使参数可选。
在 PHP 中创建函数时,可以提供默认参数,这样当参数未传递给函数时,它仍然可以在函数中使用预定义值。这些默认值也可以称为可选参数,因为它们不需要传递给函数。
假设你有这样的功能;
function testFunction($a = 1)
{
return $a;
}
// When u call it
echo testFunction(); // prints 1
echo testFunction(2); // prints 2
您可以选择设置默认值(在您的情况下为 NULL
),这将使该参数成为可选的,而不是必需的。这就是为什么它在您看来是不必要的,您可能只使用参数调用此函数。
你可以查一下here。
无默认参数:
当你用这个写函数时 header
public function view($slug)
调用此函数时必须传递一个参数。 否则这将引发错误。
默认参数:
public function view($slug = NULL)
有了这个 header 你可以但不必交出一个参数。