php数组/对象的值传递和引用传递
程序员文章站
2024-01-08 13:52:40
...
php数组/对象的值传递和引用传递
一般的数据类型(int, float, bool)不做这方面的解说了
这里详细介绍一下数组和的类的对象作为参数进行值传递的区别
数组值传递
output: array(2) { [0]=> string(1) "a" [1]=> string(1) "b" }
数组引用传递
outpout: array(1) { [0]=> string(2) "dd" }
类对象值传递
ss = 10; } main(); ?> output: object(pp)#1 (1) { ["ss"]=> int(10) }
类对象引用传递
ss = 10; } main(); ?> object(pp)#1 (1) { ["ss"]=> int(10) }
总结:php中,数组是当一个普通变量,值传递是要一个实参的一个拷贝副本,跟实参无关,引用传递后可以改变实参的值
而类的对象是无论值传递和引用传递都是引用传递,是对对象的引用,都会改变实参的值
推荐阅读