<?php
class Person{
public $name;public $age;
}
$p1 = new Person();
$p1->name = 'huang';
$p1->age = 99;
function test($person){
$person->name = 'huang123';
$person->age = 100;
}
test($p1);
echo $p1->name.'---'.$p1->age;//结果:huang123---100
?>
结论:(1)函数在接受对象参数时,传的是引入,而不是值
(2)若给函数传递的参数是基本数据类型或数组,那么默认是传值,若要传地址,则需要这样写:&$变量名
本文通过一个PHP示例代码详细解析了对象作为函数参数时的传递机制,区分了引用传递与值传递的不同,并展示了如何在函数内部修改对象属性。
1234

被折叠的 条评论
为什么被折叠?



