php sprintf格式字符串

时间:2011-01-10 09:11:58

标签: php string-formatting printf

我知道sprintf但我怎么能在任何地方使用相同的param?示例

sprintf("blabla %s 11111 %s", "test");

- 说几个参数,但我想把'测试'放在两个地方,没有重复

2 个答案:

答案 0 :(得分:18)

使用%$编号的占位符表示法:

sprintf('blabla %1$s 11111 %1$s', "test");

此处,%1$s的两次出现都将替换为"test"sprintf() manual page中有更多内容。

答案 1 :(得分:4)

这称为“参数交换”,并在此处的示例#3中进行了记录:http://php.net/sprintf 使用"%1$s",使用参数1,您可以在格式字符串中多次使用它,如php在线文档的示例#4所示。