php 中类似于指针的函数
PHP 中没有直接的指针概念,但它提供了一些具有类似功能的函数:
1. 引用(References)
引用允许你创建一个变量的别名,从而对原始变量所做的更改也会反映在引用中。
$x = 10;
$y =& $x; // 创建引用
$y = 20; // 修改引用会同时修改原始变量
echo $x; // 输出:20
2. 数组中的引用
立即学习“PHP免费学习笔记(深入)”;
PHP 数组中的元素可以是引用,这允许你修改原始数组。
$arr = [1, 2, 3];
$ref =& $arr[1]; // 获取数组元素的引用
$ref = 42; // 修改引用会同时修改原始数组
echo $arr[1]; // 输出:42
3. 函数的参数传递
PHP 函数参数默认按值传递,但你可以使用 & 符号强制按引用传递。
function swapNumbers(&$a, &$b) {
$temp = $a;
$a = $b;
$b = $temp;
}
$a = 1;
$b = 2;
swapNumbers($a, $b); // 交换 a 和 b 的值
echo $a; // 输出:2
echo $b; // 输出:1
4. 函数返回值
PHP 函数可以返回一个变量的引用,使其可以被外部代码修改。
function &getArrayReference() {
return $GLOBALS['arr']; // 返回数组的引用
}
$arr = [1, 2, 3];
$ref =& getArrayReference();
$ref[1] = 42; // 修改引用会同时修改原始数组
echo $arr[1]; // 输出:42