值传递
变量的拷贝,变量指向不同地址,一个变量的更改 不会 影响另一个变量
引用传递
指向同一个地址,一个变量的更改 会 影响另一变量
对象赋值, 为引用传递
实践
demo5.php
<?php
/**
* Desc: 值传递与引用传递
* User: zyy
* Date: 2019-12-08
* Time: 下午 21:20
*/
namespace Article {
class Comment1
{
public $title;
public $content;
public function __construct($title, $content)
{
$this->title = $title;
$this->content = $content;
}
public function getTitle($title)
{
$title = 123;
return $title;
}
public function getTitleBy(&$title)
{
$title = 456;
return $title;
}
}
$obj = new Comment1('title', 'content');
$obj->getTitle($obj->title); //值传递,不会影响$obj对象的$title属性
echo $obj->title;echo "<br/>";
echo "<pre>";var_dump($obj);echo "</pre>";echo "<br/>";
$obj->getTitleBy($obj->title);//引用传递,会影响$obj对象的$title属性
echo $obj->title;echo "<br/>";
echo "<pre>";var_dump($obj);echo "</pre>";echo "<br/>";
$obj2 = $obj; //对象赋值,默认为引用传递,变量$obj2的修改 会 影响另一个变量$obj
$obj2->title = 'obj2 改变 title';
echo "<pre>";var_dump($obj);echo "</pre>";echo "<br/>";
}
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦