$this->lang = &$lang; 后面的 &$是啥意思?(php引用运算符)

zblog3年前php151

$this->lang = &$lang; 后面的 &$是啥意思?(php引用运算符)

在zblog中出现如:

image.png


        //基本配置加载到$zbp内

        $this->version = &$blogversion;

        $this->option_user_file = &$option_user_file;

        $this->option = &$option;

        $this->lang = &$lang;

        $this->langs = &$langs;

        $this->routes = &$routes;


        $this->path = &$blogpath;

        $this->host = &$bloghost; //此值在后边初始化时可能会变化!

解释:

在PHP中,&$ 是一个引用运算符。

当你在一个变量前使用 & 符号,你实际上是在声明一个引用。这意味着,如果你更改了引用的值,原始变量的值也会被更改,因为它们实际上是同一个对象的两个不同名称。

考虑以下示例:

image.png


在上面的例子中,$a 的值最初是5。但是,当我们声明 $b = &$a; 时,我们创建了一个指向 $a 的引用。因此,当我们更改 $b 的值时,$a 的值也会被更改。

回到你给出的代码片段 $this->lang = &$lang;:

这意味着 $this->lang 被设置为 $lang 的引用。这意味着,如果外部的 $lang 变量发生更改,内部类中的 $this->lang 也会反映这些更改。这可以用于确保内部和外部变量保持同步。


相关文章

php函数的参数类型,默认参数,可变参数 等都有啥参数类型?举例。

php函数的参数类型,默认参数,可变参数 等都有啥参数类型?举例。在 PHP 中,函数的参数可以分为以下几种类型:位置参数(Positional Parameters):位置参数是函数定义时必须按照特...

php的 is_uploaded_file 函数- if (is_uploaded_file($_FILES[$key]['tmp_name'])) { 的 is_uploaded_file 是啥意思

php的 is_uploaded_file 函数- if (is_uploaded_file($_FILES[$key]['tmp_name'])) { 的 is_uploaded_file 是啥意思

if (is_uploaded_file($_FILES[$key]['tmp_name'])) { 的 is_uploaded_file 是啥意思在PHP中,is_uploaded_...

php 判断变量类型,php怎么判断变量类型?方法是啥?

php 判断变量类型,php怎么判断变量类型?方法是啥?

php 判断变量类型,php怎么判断变量类型?方法是啥?在 PHP 中,你可以使用 gettype() 函数来判断一个变量的类型。这个函数返回一个字符串,表示变量的类型。在zblo...

PHP 一个函数名 只能定义一次!那么 php函数支持重载吗

PHP 一个函数名 只能定义一次!那么 php函数支持重载吗

PHP 一个函数名 只能定义一次!那么 php函数支持重载吗?在 PHP 中,一个函数名确实只能定义一次。这意味着你不能使用相同的函数名定义多个函数,因为 PHP 不支持函数重载(Function O...

PHP 一个函数名 只能定义一次吗?多次定义会不会报错。

PHP 一个函数名 只能定义一次吗?多次定义会不会报错。

PHP 一个函数名 只能定义一次吗?多次定义会不会报错。在 PHP 中,函数名是全局唯一的,这意味着每个函数名只能定义一次。如果你尝试定义一个已经存在的函数名,PHP 将会抛出一个错误。这是因为在 P...

php判断函数是否存在,function_exists(函数名)

php判断函数是否存在,function_exists(函数名)

在zblog插件开发中,经常用到php判断函数是否存在。特别一些版本中,一些zblog函数不一定存在,这样就要用到这个判断。php判断函数是否存在,使用:function_exists(函数名)fun...