php 中函数调用既可使用值传递也可使用引用传递。默认情况下为值传递,函数接收参数的副本,对其修改不影响原始值。而引用传递通过在参数前加 & 符号来声明,函数直接修改传递的变量。引用传递在需要函数修改外部变量时很有用,例如修改数组元素。

在 PHP 中,默认情况下,函数调用使用值传递。这意味着当一个值作为参数传递给函数时,函数将获得该值的副本。对该副本所做的任何更改都不会影响原始值。
function addValue($number) {
$number += 10;
}
$value = 10;
addValue($value);
echo $value; // 输出:10如上例所示,当 $value 传递给 addValue 函数时,函数获取该变量的副本。函数内的修改只影响该副本,不会影响原始变量。
有时,我们需要函数直接修改原始变量。这时,可以使用引用传递。要声明引用,请在参数类型声明前添加一个 & 符号。
立即学习“PHP免费学习笔记(深入)”;
function addReference(&$number) {
$number += 10;
}
$value = 10;
addReference($value);
echo $value; // 输出:20如上例所示,addReference 函数的 $number 参数声明为引用。这意味着函数将直接修改传递的变量。
使用引用传递可以简化某些任务。例如,我们有一个包含用户数据的数组,并且需要在函数中对其进行修改。
$users = [
[
'id' => 1,
'name' => 'John Doe',
],
];
function changeName(&$user, $newName) {
$user['name'] = $newName;
}
changeName($users[0], 'Jane Doe');
echo $users[0]['name']; // 输出:Jane Doe通过将 $user 参数声明为引用,changeName 函数可以直接修改数组中的原始元素。
在 PHP 中了解值传递和引用传递对于编写高效和可维护的代码至关重要。通过使用引用传递,我们可以避免不必要的变量复制,并直接修改函数外部的变量。
以上就是揭秘 PHP 函数调用中的值传递和引用传递的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号