PHP引用返回和引用的详细解释
当您希望使用一个函数来查找一个应该绑定到变量的引用时,引用返回。不要使用返回引用来提高性能,引擎足够智能化以优化它。只有在有合理的技术原因的情况下才返回引用:
复制代码代码如下所示:
< PHP
类Foo {
公共$值= 42;
公共职能getValue(){
返回这个值;
}
}
$ obj =新的Foo;
自我价值=美元美元obj -> getValue($ myvalue); / /是一个参考对象->美元价值,这是42。
obj ->值= 2美元;
echo myvalue打印新的价值; / / $ obj ->价值,即2。
>
以上是PHP手册给出的解释,很好理解。
复制代码代码如下所示:
< PHP
函数测试(){
静态$ = 0;声明静态变量
美元= $ + 1;
$;
返回$;
}
$ =测试($ b);输出值:1
$ = 5;
$ =测试($ b);输出值:2
$ =测试($ B);输出值:3 ***
$ = 5;将值更改为5。
$ =测试($ B);输出值:6 ***
>
虽然函数定义被引用,但是如果我们使用这个一般情况调用函数,它将与普通函数一样发挥作用。结果是1, 2。
$ =测试()。这种调用方式是引用返回,它类似于$ = $ B,然后第二个句子等于$ = 5,等于变量$ B = 5,从最后一句中获得的6易于理解。
与参数传递不同,在两个地方使用符号是必要的。有人指出,引用是返回的,而不是普通副本。还指出,a是用作引用绑定而不是普通赋值。
如果注意:试图从函数返回的引用:收益(美元->价值),这是行不通的,因为它是试图代替参考变量表达式的结果返回。参考变量只能从函数返回的任何其他方式。如果代码试图返回一个动态的表达或一个新的算子的结果,一个e_notice误差将从PHP和PHP 5.1.0发布4.4.0。
两。引用
当设置为参考,它只是将变量名和变量的内容之间的结合。这并不意味着该变量的内容被破坏。例如:
复制代码代码如下所示:
< PHP
$ = 1;
美元=美元;
unset(美元);
>
没有设置$,$ A.
Unix的断开呼叫的类比可能有助于了解。