php中对象的传递都是引用,实例学习php中数组、类对象进行值传递与引用传递的区别...

本文介绍下php编程中数组和类的对象,作为参数进行值传递的区别,供大家参考。

1,数组值传递

例子:

复制代码 代码示例:

function main() {

$cc = array(

'a','b'

);

change($cc);

var_dump($cc);

die;

}

function change($cc){

$cc = array('dd');

}

main();

?>

输出:

array(2) {

[0]=>

string(1) "a"

[1]=>

string(1) "b"

}

2,数组引用传递

例子:

复制代码 代码示例:

function main() {

$cc = array(

'a','b'

);

change($cc);

var_dump($cc);

die;

}

function change(&$cc){

$cc = array('dd');

}

main();

?>

输出:

array(1) {

[0]=>

string(2) "dd"

}

3,类对象值传递

例子:

复制代码 代码示例:

class pp{

public $ss = 0;

}

function main() {

$p = new pp();

change($p);

var_dump($p);

die;

} //by www.jbxue.com

function change($p){

$p->ss = 10;

}

main();

?>

输出:

object(pp)#1 (1) {

["ss"]=>

int(10)

}

4,类对象引用传递

例子:

复制代码 代码示例:

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中,数组作为一个普通变量,值传递是要一个实参的一个拷贝副本,跟实参无关,引用传递后可以改变实参的值。

类的对象,无论值传递和引用传递,都是引用传递,是对对象的引用,都会改变实参的值。

你明白了否?关于php中数组与类的对象,作为值传递与引用传递的方法,就介绍这些了,希望对大家有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值