Php 函数声明中的默认值为NULL
为什么我们需要在函数中将Php 函数声明中的默认值为NULL,php,function-parameter,Php,Function Parameter,为什么我们需要在函数中将$slug参数声明为默认值NULL? 如果我们不将其声明为默认值NULL,会发生什么变化 对我来说,一切都不会改变: public function view($slug = NULL) { $data['news_item'] = $this->news_model->get_news($slug); if (empty($data['news_item'])) { show_404(); } ...
$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
,在您的情况下),这将使该参数成为可选参数,而不是必需参数。这就是为什么在您看来它是不必要的,您可能只使用一个参数调用这个函数
您可以查找此项。无默认参数:
public function view($slug = NULL)
当您使用此标题编写函数时
public function view($slug)
调用此函数时,必须移交一个参数。
否则将抛出一个错误
默认参数:
public function view($slug = NULL)
使用此标题,您可以但不必移交参数 区别在于调用函数的时间。如果设置了默认值,则可以不使用参数调用它,例如
$ob->view()代码>,如果没有默认设置,则会出错,因为您需要传递一个值,例如$ob->view('somevaluehere')代码>