読者です 読者をやめる 読者になる 読者になる

オライリー本で=の結合規則を間違えてる


「2.4.12.1代入」からのメモ。


PHPでは他の言語と同じように=を複数使うことで変数に一括して代入を行うことができます。

<?php
$a = 5;
$b = 10;
$c = $a = $b;
echo "\$a = $a , \$b = $b , \$c = $c\n";
?>
$a = 10 , $b = 10 , $c = 10

結果から=の結合規則は「右から左」ですね。ですが、「2.4式と演算子」の演算子の優先度と結合規則表に記載されている=の結合規則が「左から右」になっています。これは間違えですね。ついでに言うと+=や-=についての結合規則も間違えてます。正しくはPHPのサイトで確認したほうがよさそうですね。
PHP: 演算子の優先順位 - Manual