在PHP中,用作函数参数的变量赋值意味着什么?

在PHP中,用作函数参数的变量赋值意味着什么?,php,codeigniter,Php,Codeigniter,对不起,我知道这是一个非常简单的问题,但我一直在这里搜索,并试图让谷歌成为我的朋友,但没有结果 我想知道变量赋值作为函数的参数在PHP中的作用。具体来说,我在Codeigniter文档中找到了这个示例: public function get_news($slug = FALSE) { if ($slug === FALSE) { $query = $this->db->get('news'); return $query->re

对不起,我知道这是一个非常简单的问题,但我一直在这里搜索,并试图让谷歌成为我的朋友,但没有结果

我想知道变量赋值作为函数的参数在PHP中的作用。具体来说,我在Codeigniter文档中找到了这个示例:

public function get_news($slug = FALSE)
{
    if ($slug === FALSE)
    {
        $query = $this->db->get('news');
        return $query->result_array();
    }

    $query = $this->db->get_where('news', array('slug' => $slug));
    return $query->row_array();
}
基本上,这是一个控制器类的方法,它应该接受对控制器“News”的任何请求,该控制器“News”有一个参数,并查询数据库以查看是否存在一个与该参数匹配的slug的新闻项

我的猜测是,这会将变量
$slug
初始化为
FALSE
,但是如果用户正在向方法传递一个实际的“slug”参数,那么
FALSE
值在传递给函数之前会立即被覆盖,但我在任何地方都找不到有关这一点的信息


谢谢你的帮助

为该参数指定默认值。如果您在没有值的情况下调用方法,那么$slug的默认值将假定为FALSE。

您将为该参数指定默认值。如果您调用的方法没有值,那么$slug的默认值将假定为FALSE。

函数可以将标量参数的C++样式默认值定义为 如下:

变量如果没有传入任何参数,如C++,则默认为参数中设置的任何变量。 如果您没有给参数赋值,它将使用您定义的默认值。 为参数传入的任何值都将覆盖默认参数。

函数可以将标量参数的C++样式默认值定义为 如下:

变量如果没有传入任何参数,如C++,则默认为参数中设置的任何变量。 如果您没有给参数赋值,它将使用您定义的默认值。


为参数传入的任何值都将覆盖默认参数。

在本例中,$slug被赋予默认值。如果您不更改它,它将进入第一个If(),它查询新闻时不使用slug。如果您确实将某物作为参数,它将使用slug作为参数进入第二个查询。

在本例中,$slug是一个默认值。如果您不更改它,它将进入第一个If(),它查询新闻时不使用slug。如果您确实将某个内容作为参数,它将使用slug作为参数进入第二个查询。

您的猜测是对的。干杯。我也这么想,它的功能也是如此,但如果你不确定你在找什么,你就很难知道该找什么,知道吗?“默认参数值”似乎是retrospect中显而易见的Google搜索。您的猜测是对的。干杯。我也这么想,它的功能也是如此,但如果你不确定你在找什么,你就很难知道该找什么,知道吗?“默认参数值”看起来像是回过头来谷歌搜索中显而易见的结果。我接受这个答案,因为我认为这是我自己应该找到信息的地方。。。谢谢,我接受这个答案,因为我认为我自己应该在这里找到这些信息。。。谢谢