printfなどで、変数を1個だけ渡して複数表示したい場合

相変わらず、タイトルが難しい…。
コードで示すのが一番さ。

こういうこと。

printf('%sはすばらしい。そんな%sを生んだ%sはもっとすばらしい。', $child, $child, $parent);
同じ変数を2つ渡さなきゃならない。スマートでない。
そこで、
printf('%sはすばらしい。そんな%1$sを生んだ%sはもっとすばらしい。', $child, $parent);
スマートになった。
こゆこともできちゃう。
printf('%2$sはすばらしい。そんな%2$sを生んだ%1$sはもっとすばらしい。', $parent, $child);

PHPマニュアルによるとこのことは、
フォーマット文字列における引数の 番号付け/交換
と言い、本件のタイトルは
同じ置換指示子を複数回使用する際にコードに引数を追加せずにすむ
という用語を用いれば良かった模様。

— posted by たか at 03:28 pm   pingTrackBack [0]

T: Y: ALL: Online:
ThemeSwitch
Created in 0.0037 sec.
prev
2009.9
next
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30      
 
blogBar
Firefox3 Meter