php - str - sprintf html
PHP sprintf escapando% (3)
¿Qué tal esto?
$variablesArray[0] = ''%'';
$variablesArray[1] = ''€'';
$variablesArray[2] = 27.59;
$stringWithVariables = ''About to deduct 50%s of %s %s from your Top-Up account.'';
echo vsprintf($stringWithVariables, $variablesArray);
Solo agregue su signo de porcentaje en su matriz de variables
Quiero la siguiente salida:
A punto de deducir el 50% de € 27.59 de su cuenta Top-Up.
cuando hago algo como esto:
$variablesArray[0] = ''€'';
$variablesArray[1] = 27.59;
$stringWithVariables = ''About to deduct 50% of %s %s from your Top-Up account.'';
echo vsprintf($stringWithVariables, $variablesArray);
Pero me da este error vsprintf() [function.vsprintf]: Too few arguments in ...
porque considera el %
en 50%
también para el reemplazo. ¿Cómo escapo?
Es muy fácil.
Pon otro %
delante del %
original para escapar de él.
Por ejemplo,
$num=23;
printf("%%d of 23 = %d",$num);
Salida:
%d of 23 = 23
Escapelo con otro %
:
$stringWithVariables = ''About to deduct 50%% of %s %s from your Top-Up account.'';