строка формата php sprintf


Я знаю о sprintf, но как я могу использовать один и тот же параметр в любом месте? пример

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

- там сказано несколько параметров, но я хочу разместить "тест" в двух местах без дублирования

Author: BoltClock, 2011-01-10

2 answers

Используйте обозначение заполнителя с номером %$:

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

Здесь оба вхождения %1$s будут заменены на "test". Подробнее об этом в sprintf() страница руководства.

 17
Author: BoltClock, 2011-01-10 09:20:09

Это называется "Обмен аргументами" и задокументировано в примере № 3 здесь: http://php.net/sprintf Используйте "%1$s", чтобы использовать аргумент 1, вы можете использовать его несколько раз в строке формата, как показано в примере № 4 онлайн-документации php.

 4
Author: Mike Bretz, 2011-01-10 09:17:34