PHP 按引用返回

phpserver side programmingprogramming更新于 2025/8/19 16:37:17

简介

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

示例

在以下示例中,myfunction() 定义为按引用返回。它包含一个静态变量,该变量的引用被返回并赋值给一个全局变量。局部静态变量的值也会改变其引用,并被赋值给外部变量。

示例

<?php
function &myfunction(){
   static $x=10;
   echo "x 在函数内部: ",$x, "
";    return $x; } $a=&myfunction(); // 函数中包含对 4x 的引用 echo "通过引用返回: ", $a, "
"; $a=$a+10; // 函数内部变量也自增 $a=&myfunction(); ?>

输出

此示例输出如下

x 在函数内部: 10
通过引用返回: 10
x 在函数内部: 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 "私有属性的值: ", $a->getbyval();
?>

输出

上述脚本的结果如下

私有属性的值: 100

相关文章