当前位置:Gxlcms > PHP教程 > 连续用“等号”是什么意思?

连续用“等号”是什么意思?

时间:2021-07-01 10:21:17 帮助过:52人阅读

下面是一段dedecms中的代码:
$dsql=$db=new DedeSql(FALSE)


一个"="号是赋值,

这种连写的方式代表是什么意思呢?


回复讨论(解决方案)

同时赋值
$a = $b = 1;
等价于
$a = 1;
$b = 1;

不过需要注意的是
$dsql=$db=new DedeSql(FALSE)
并不等价于
$dsql = new DedeSql(FALSE);
$db = new DedeSql(FALSE);

前者是两个变量是同一个实例
后者是两个变量各有一个实例

还真没这样用过。

同时赋值
$a = $b = 1;
等价于
$a = 1;
$b = 1;

不过需要注意的是
$dsql=$db=new DedeSql(FALSE)
并不等价于
$dsql = new DedeSql(FALSE);
$db = new DedeSql(FALSE);

前者是两个变量是同一个实例
后者是两个变量各有一个实例
…… 连续赋值,等号右侧为实例化类,则等号左侧变量的值是同一个实例,对吧?

这种东西需要的不是记忆,而是实践

class T {  public $v = 1;}$a = $b = new T;echo $a->v, ' ', $b->v; //1 1$b->v = 'a';echo $a->v, ' ', $b->v;//a a

人气教程排行