printf / sprintf带有数组参数而不是变量

时间:2011-09-07 20:43:46

标签: php arrays string printf

$args = (
 'var1' => 'abc',
 'var2' => 'def',
);


$text = sprintf('first var is: %1$s, second one is: %2$s', $args);

基本上$args变量是动态的,我不知道它是否会有任何条目或多少。

文本也是如此,我不知道是否需要在其中替换变量,或者需要更换多少。

如果出现像%s %d%1$s之类的东西,我怎样才能创建这样的函数,以某种方式提取元素并将其替换为文本?

1 个答案:

答案 0 :(得分:38)

您可能需要vsprintf()