アプリ版:「スタンプのみでお礼する」機能のリリースについて

2行目と3行目の出力がなぜ異なるのか理解できません。
2行目が期待通りに動かなかったので3行目のように書き直したのですが、
理由を教えていただけると助かります。

$s = 'goo';
print ((reverse $s), "\n");
print (($t = reverse $s), "\n");

A 回答 (1件)

しっかりとした検証はしていませんが…


2行目はリストコンテキストの評価となり、3行目はスカラコンテキストでの評価になるからだと思われます。
    • good
    • 0
この回答へのお礼

なるほどなるほど、確かにそういうことでしょう。
デフォルトでは、2行目のようにリストコンテキストになるんですね。
配列の要素が1つしかなくて、それをreverseするから、
結果だけ見ると、何も起こっていないように見える。
納得しました。
ありがとうございました。

お礼日時:2008/02/01 16:26

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!