Computer >> Máy Tính >  >> Lập trình >> PHP

Trả lại PHP theo Tham chiếu

Giới thiệu

Trong PHP , một hàm cũng có thể được thực hiện để trả về một tham chiếu. Điều này rất hữu ích để tìm ra biến mà một tham chiếu nên được ràng buộc. Để xác định một hàm trả về tham chiếu, hãy đặt tiền tố tên của nó bằng & ký tên.

Ví dụ

Trong ví dụ sau, hàm my function () được định nghĩa để trả về bằng tham chiếu. Nó chứa một biến tĩnh có tham chiếu được trả về và gán cho một biến toàn cục. Giá trị của biến tĩnh cục bộ cũng sẽ thay đổi bên ngoài tham chiếu của nó được gán với giá trị khác.

Ví dụ

<?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();
?>

Đầu ra

Ví dụ này cho kết quả sau

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

phương thức trả về tham chiếu

Một lớp cũng có thể có một phương thức có thể trả về tham chiếu. Điều này cho phép thay đổi giá trị của biến cá thể riêng tư từ bên ngoài lớp

Ví dụ

<?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();
?>

Đầu ra

Kết quả của script trên như sau

Value of private property: 100