重複の可能性:
奇妙なエコー、PHP での印刷動作?
次の PHP コード:
print (2).(3 * (print 3));
出力に" " を表示323
しますか? どのように処理されますか?
これは括弧 (操作の優先順位) が原因です。
(print 3)
行末の は最終出力の 1 桁目を表示します (3) が、すべての PHP 印刷ステートメントは 1 を返します。常に (マニュアルを確認してください)。したがって、この後、次のようになります。
print (2).(3 * 1);
これは次と同じです:
print (2).(3);
これで、「23」を出力する単純な連結になりました。「323」と表示されています。
ご了承ください
print (2).(1 - (print 3));
「320」と表示されます。