Función vsprintf() de PHP
Ejemplo
Escribir la cadena de formato en la variable:
<?php $number = 9; $str = "Beijing"; $txt = vsprintf("Hay 쥕lones de bicicletas en %s.", array($number, $str)); echo $txt; ?>
Definición y uso
La función vsprintf() escribe la cadena de formato en la variable.
Diferente de sprintf(), los parámetros en vsprintf() se encuentran en un array. Los elementos del array se insertarán en el símbolo de porcentaje (%) del string principal. La función se ejecuta de manera gradual. En el primer símbolo %, se inserta el primer elemento del array, en el segundo símbolo %, se inserta el segundo elemento del array, y así sucesivamente.
Comentarios:Si hay más símbolos % arg Si se proporcionan parámetros, debe utilizar marcadores de posición. Los marcadores de posición se insertan después del símbolo % y consisten en un número y "\$". Véase el ejemplo 2.
Consejo:Funciones relacionadas:
Sintaxis
vsprintf(format,argarray)
Parámetros | Descripción |
---|---|
format |
Obligatorio. Especifica la cadena y cómo formatear las variables dentro de la misma. Valores de formato posibles:
Valores de formato adicionales. Deben colocarse necesariamente entre % y la letra (por ejemplo %.2f):
Comentarios:Si se utilizan varios valores de formato anteriores, deben utilizarse en el orden indicado y no pueden desordenarse. |
argarray | Obligatorio. Un array con parámetros que se insertarán format En el símbolo % dentro de la cadena. |
Detalles técnicos
Valor devuelto: | Devuelve el valor del array en forma de cadena formateada. |
Versión de PHP: | 4.1.0+ |
Más ejemplos
Ejemplo 1
Se utiliza el valor de formato %f:
<?php $num1 = 123; $num2 = 456; $txt = vsprintf("%f%f",array($num1,$num2)); echo $txt; ?>
Ejemplo 2
Usar placeholders:
<?php $number = 123; $txt = vsprintf("Con dos decimales:%1$.2f<br>Sin decimales:%1$u",array($number)); echo $txt; ?>
Ejemplo 3
Usar sprintf() para mostrar todos los posibles valores de formato:
<?php $num1 = 123456789; $num2 = -123456789; $char = 50; // El carácter ASCII 50 es 2 // Comentario: El valor de formato "%%" devuelve el símbolo de porcentaje echo sprintf("%%b = %b",$num1)."<br>"; // Número binario echo sprintf("%%c = %c",$char)."<br>"; // Carácter ASCII echo sprintf("%%d = %d",$num1)."<br>"; // Número decimal con signo echo sprintf("%%d = %d",$num2)."<br>"; // Número decimal con signo echo sprintf("%%e = %e",$num1)."<br>"; // Notación científica (minúscula) echo sprintf("%%E = %E",$num1)."<br>"; // Notación científica (mayúscula) echo sprintf("%鑾u",$num1)."<br>"; // Número decimal sin signo (positivo) echo sprintf("%鑾u",$num2)."<br>"; // Número decimal sin signo (negativo) echo sprintf("%%f = %f",$num1)."<br>"; // Número de coma flotante (considerando la configuración local) echo sprintf("%%F = %F",$num1)."<br>"; // Número de coma flotante (sin considerar la configuración local) echo sprintf("%%g = %g",$num1)."<br>"; // Corto en comparación con %%e y %%f echo sprintf("%%G = %G",$num1)."<br>"; // Corto en comparación con %%E y %%f echo sprintf("%%o = %o",$num1)."<br>"; // Número octal echo sprintf("%%s = %s",$num1)."<br>"; // Cadena echo sprintf("%%x = %x",$num1)."<br>"; // Número hexadecimal (minúsculas) echo sprintf("%%X = %X",$num1)."<br>"; // Número hexadecimal (mayúsculas) echo sprintf("%%+d = %+d",$num1)."<br>"; // Símbolo de signo (positivo) echo sprintf("%%+d = %+d",$num2)."<br>"; // Símbolo de signo (negativo) ?>
Ejemplo 4
Demostración de caracteres de cadena:
<?php $str1 = "Hello"; $str2 = "Hello world!"; echo vsprintf("[%s]",array($str1))."<br>"; echo vsprintf("[%8s]",array($str1))."<br>"; echo vsprintf("[%-8s]",array($str1))."<br>"; echo vsprintf("[%08s]",array($str1))."<br>"; echo vsprintf("[%'*8s]",array($str1))."<br>"; echo vsprintf("[%8.8s]",array($str2))."<br>"; ?>