在 php 函数中,存储变量变量的变量类型称为引用或地址,允许通过变量修改另一变量的值。php 支持两种引用:变量引用 (&) 指向简单变量,数组引用 (&[]) 指向数组元素。通过使用 & 符号和 &[] 符号创建引用,变量引用和数组引用在传递回调函数、修改对象实例变量等场景中非常有用。
PHP 函数中存储变量变量的变量类型
在 PHP 函数中,可以存储变量变量的变量类型称为引用(reference)或地址(address)。这允许我们通过一个变量修改另一个变量的值。
PHP 中支持两种类型的引用:
立即学习“PHP免费学习笔记(深入)”;
- 变量引用 (&): 对于简单值,创建一个指向另一个变量的引用。
- 数组引用 (&[]): 对于数组,创建一个指向数组元素的引用。
使用变量引用
要创建变量引用,在变量名前使用 & 符号:
|
1 2 3 4 5 6 7 8 |
|
使用数组引用
要创建数组引用,在数组索引前使用 &[] 符号:
|
1 2 3 4 5 6 7 8 |
|
实战案例
变量引用和数组引用可以在各种场景中使用。例如:
-
将回调函数作为参数传递给其他函数:
1
2
3
4
5
6
7
8
9
10
11
12
<?phpfunctionsum($a,$b) {return$a+$b;}$arr= [10, 20];// 使用数组引用将 $arr[1] 作为第二个参数传递array_walk($arr,'sum', &$arr[1]);echo$arr[1];// 输出:30?> -
在面向对象的编程中,修改对象的实例变量:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?phpclassUser {private$name;publicfunction__construct($name) {$this->name =$name;}publicfunctiongetName() {return$this->name;}publicfunctionrename(&$name) {$this->name =$name;}}$user=newUser('alice');$user->rename('bob');echo$user->getName();// 输出:bob?>登录后复制




