PHP通过引用返回

首页 / 新闻资讯 / 正文

介绍

在PHP中也可以使函数返回引用。这对于查找引用应绑定到哪个变量很有用。要定义一个返回引用的函数,请在其名称前加上符号。

示例

在以下示例中,myfunction()定义为通过引用返回。它包含一个静态变量,其引用被返回并分配给全局变量。局部静态变量的值也会改变,其参考值被分配了不同的值。

示例

<?php function &myfunction(){    static $x=10;    echo "x Inside function: ",$x,"\n";    return $x; } $a=&myfunction(); //contains reference to 4x in function echo "returned by reference: ", $a, "\n"; $a=$a+10; //increments variable inside function too $a=&myfunction(); ?>

输出结果

本示例给出以下输出

x Inside function: 10 returned by reference: 10 x Inside function: 20

方法返回参考

一个类也可以有一个能够返回引用的方法。这样可以从类外部确定私有实例变量的值

示例

<?php class myclass{    private $val;    function __construct($x){       $this->val=$x;    }    function &getbyref(){       return $this->val;    }    function getbyval(){       return $this->val;    } } $a=new myclass(10); $b=&$a->getbyref(); $b=100; echo "Value of private property: ", $a->getbyval(); ?>

输出结果

以上脚本的结果如下

Value of private property: 100