php语法$ a = $ b = 1;

Kri*_*eth 2 php syntax

$a = 1;
$b = $a;
Run Code Online (Sandbox Code Playgroud)

等于写这个?

$a = $b = 1;
Run Code Online (Sandbox Code Playgroud)

第二个示例是否总是将1作为$ a和$ b的值,即使$ a和$ b已经分配了值?

小智 5

引用文档:

赋值表达式的值是指定的值.也就是说,"$ a = 3"的值是3.这可以让你做一些棘手的事情:

<?php

$a = ($b = 4) + 5; // $a is equal to 9 now, and $b has been set to 4.

?>
Run Code Online (Sandbox Code Playgroud)

因此,为了回答你的问题,分配的结果$b = 1是1,因此,$a = $b = 1将 - 的值$b = 1- 也就是说 - 分配给$a.

话虽这么说,滥用这个可能导致代码难以阅读.


Rin*_*g Ø 5

是的,PHP 将放入1然后$b$b值放入$a,即1

没有歧义,因为第一个作业是$b = 1,下一个作业是$a = $b