PHP sprintf escaping%


Answers

Это очень просто.

Положите еще % перед исходным % чтобы избежать его.

Например,

$num=23;
printf("%%d of 23 = %d",$num);

Вывод:

%d of 23 = 23
Question

Я хочу получить следующий результат:

О том, чтобы вычесть 50% от € 27,59 с вашего аккаунта Top-Up.

когда я делаю что-то вроде этого:

$variablesArray[0] = '€';
$variablesArray[1] = 27.59;
$stringWithVariables = 'About to deduct 50% of %s %s from your Top-Up account.';
echo vsprintf($stringWithVariables, $variablesArray);

Но он дает мне эту ошибку vsprintf() [function.vsprintf]: Too few arguments in ... потому что он рассматривает % в 50% также для замены. Как мне избежать этого?