php 数组 类对象 值传递 引用传递 区别
来源:互联网 发布:电子口岸数据分中心 编辑:程序博客网 时间:2024/05/17 10:07
一般的数据类型(int, float, bool)不做这方面的解说了
这里详细介绍一下数组和的类的对象作为参数进行值传递的区别
数组值传递
实例代码:
<?php
function main() {
$cc = array(
'a'
,
'b'
);
change($cc);
var_dump($cc);
die;
}
function change($cc){
$cc = array(
'dd'
);
}
main();
?>
output:
array(2) {
[0]=>
string
(1)
"a"
[1]=>
string
(1)
"b"
}
数组引用传递
<?php
function main() {
$cc = array(
'a'
,
'b'
);
change($cc);
var_dump($cc);
die;
}
function change(&$cc){
$cc = array(
'dd'
);
}
main();
?>
outpout:
array(1) {
[0]=>
string
(2)
"dd"
}
类对象值传递
<?php
class
pp{
public
$ss = 0;
}
function main() {
$p =
new
pp();
change($p);
var_dump($p);
die;
}
function change($p){
$p->ss = 10;
}
main();
?>
output:
object
(pp)#1 (1) {
[
"ss"
]=>
int
(10)
}
类对象引用传递
<?php
class
pp{
public
$ss = 0;
}
function main() {
$p =
new
pp();
change($p);
var_dump($p);
die;
}
function change(&$p){
$p->ss = 10;
}
main();
?>
object
(pp)#1 (1) {
[
"ss"
]=>
int
(10)
}
总结:php中,数组是当一个普通变量,值传递是要一个实参的一个拷贝副本,跟实参无关,引用传递后可以改变实参的值
而类的对象是无论值传递和引用传递都是引用传递,是对对象的引用,都会改变实参的值
0 0
- php 数组 类对象 值传递 引用传递 区别
- php 数组 类对象 值传递 引用传递 区别
- php数组和对象的值传递和引用传递
- php数组是值传递,对象是引用传递
- 值传递、引用传递、数组传递的区别
- php 数组 传递 引用
- //值传递 和引用 传递的区别 例子(数组和 对象引用传递 是类似的)
- java值传递,引用传递,数组传递
- php值和对象的值传递和引用传递
- 数组值传递和引用传递
- php值传递 与引用传递
- php 值传递参数 引用传递
- php的值传递和引用传递
- 引用传递和值传递的区别
- 值传递、引用传递的区别
- 值传递和引用传递的区别
- 值传递、引用传递的区别
- 值传递和引用传递的区别
- 二分搜索
- Codeforces 452F
- 深入理解计算机各种类型大小(sizeof)
- web前端
- libjpeg 库的安装
- php 数组 类对象 值传递 引用传递 区别
- PhpStorm支持CI框架的代码提示自动补全(自己写的model类和Service类及类里的function的自动提示)(详细步骤)
- mysql5.5.49多实例安装
- Andriod资料库
- OpenGL 入门3
- git获取github远程仓库
- 百度地图
- Django运行访问项目出现的问题:DisallowedHost at / Invalid HTTP_HOST header
- Mysql数据库 (1)建表与简单查询