[4] 代入演算子の戻り値 
2000/7/4 (Tue) 12:58:00 - あけび
これを有効に活用しているスクリプトはあまり見かけませんが、
代入演算子 = にも戻り値はあります。
初期設定などで時々

$a = $b = $c = 0;

などという記述がされているのを見てもわかる通り、
代入演算子の戻り値は、代入した値そのものです。

これを利用すれば、代入と条件判断を同時に行うこともできます。
lxbbs.cgiの中で

if ($sk = $NEXT) { while(<READ>) { (!--$sk) && last;} }

という記述がありますが、これは

$sk = $NEXT;
if ($sk > 0) { while(<READ>) { (!--$sk) && last;} }

と同等です。

実は以前、ある方から $sk = $NEXT は $sk == $NEXT の間違いでは?
という指摘を受けたことがありましたが、
その方はどうやら $sk と $NEXT を比較しているものと勘違いされたようです。

[▼次のスレッド]
INCM/CMT
Cyclamen v3.84.01