строка формата php sprintf - PullRequest
       7

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

6 голосов
/ 10 января 2011

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

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

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

Ответы [ 2 ]

18 голосов
/ 10 января 2011

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

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

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

4 голосов
/ 10 января 2011

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

...