※この記事は、過去に別のブログに書いたものです。
向こうで書いたの2009/9/10らしいんだけど…相変わらず忘れるので、こっちにも書いておこうと。。
相変わらず、タイトルが難しい…。
コードで示すのが一番さ。
こういうこと。
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マニュアルによるとこのことは、
フォーマット文字列における引数の 番号付け/交換
と言い、本件のタイトルは
同じ置換指示子を複数回使用する際にコードに引数を追加せずにすむ
という用語を用いれば良かった模様。