Función vprintf() de PHP

Ejemplo

Escribir una cadena formateada:

<?php
$number = 9;
$str = "Beijing";
vprintf("Hay 쥕lones de bicicletas en %s", array($number, $str));
?>

Ejemplo de ejecución

Definición y uso

La función vprintf() escribe una cadena formateada.

A diferencia de printf(), los parámetros en vprintf() están ubicados en un array. Los elementos del array se insertarán en el símbolo (%) del string principal. La función se ejecuta paso a paso. 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.

Comentario:Si el símbolo % es más de arg Si se proporcionan parámetros, debe usar marcadores de posición. Los marcadores de posición se insertan después del símbolo % y se componen de un número y "\$". Véase el ejemplo 2.

Consejo:Funciones relacionadas: sprintf(), printf(), vsprintf(), fprintf() y vfprintf()

Sintaxis

vprintf(format,argarray)
Parámetro Descripción
format

Obligatorio. Especificar la cadena y cómo formatear las variables dentro de la misma.

Valores de formato posibles:

  • %% - Devuelve un porcentaje %
  • %b - Número binario
  • %c - Carácter correspondiente al valor ASCII
  • %d - Número decimal con signo (número negativo, 0, número positivo)
  • %e - Usar notación científica en minúsculas (por ejemplo 1.2e+2)
  • %E - Usar notación científica en mayúsculas (por ejemplo 1.2E+2)
  • 蒧úmero decimal sin signo (mayor o igual a 0)
  • %f - Número de coma flotante (configuración local)
  • %F - Número de coma flotante (no configuración local)
  • %g - %e y %f más cortos
  • %G - %E y %f más cortos
  • %o - Número octal
  • %s - Cadenas
  • %x - Número hexadecimal (letras minúsculas)
  • %X - Número hexadecimal (letras mayúsculas)

Valor de formato adicional. Es necesario colocarlo entre % y la letra (por ejemplo %.2f):

  • + (agregar + o - delante del número para definir la signo del número. Por defecto, solo se marca el número negativo, el número positivo no se marca)
  • ' (especificar qué usar como relleno, por defecto es un espacio. Debe usarse junto con el especificador de ancho. Por ejemplo: '%'x20s (usar "x" como relleno))
  • - (ajuste a la izquierda de valor de variable)
  • [0-9] (ancho mínimo de valor de variable)
  • .[0-9] (especifica el número de decimales o la longitud máxima de la cadena de caracteres)

Comentario:Si se utilizan varios valores de formato, deben seguir el orden anterior.

argarray Requerido. Un array con parámetros, que se insertarán format En el símbolo % de la cadena.

Detalles técnicos

Valor devuelto: Devuelve la longitud de la cadena de caracteres que se ha producido.
Versión de PHP: 4.1.0+

Más ejemplos

Ejemplo 1

Usar el valor de formato %f:

<?php
$num1 = 123;
$num2 = 456;
vprintf("%f%f",array($num1,$num2));
?>

Ejemplo de ejecución

Ejemplo 2

Usar marcadores de posición:

<?php
$number = 123;
vprintf("Con dos decimales:%1\$.2f<br>Sin decimales:%1\$u",array($number));
?>

Ejemplo de ejecución

Ejemplo 3

Usar printf() 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
printf("%%b = %b <br>",$num1); // Número binario
printf("%%c = %c <br>",$char); // Carácter ASCII
printf("%%d = %d <br>",$num1); // Número decimal con signo
printf("%%d = %d <br>",$num2); // Número decimal con signo
printf("%%e = %e <br>",$num1); // Notación científica (minúscula)
printf("%%E = %E <br>",$num1); // Notación científica (mayúscula)
printf("%鑾u <br>",$num1); // Número decimal sin signo (positivo)
printf("%鑾u <br>",$num2); // Número decimal sin signo (negativo)
printf("%%f = %f <br>",$num1); // Número de coma flotante (considerando la configuración local)
printf("%%F = %F <br>",$num1); // Número de coma flotante (sin considerar la configuración local)
printf("%%g = %g <br>",$num1); // Menor que %e y %f
printf("%%G = %G <br>",$num1); // Menor que %E y %f
printf("%%o = %o <br>",$num1); // Número octal
printf("%%s = %s <br>",$num1); // Cadenas
printf("%%x = %x <br>",$num1); // Número hexadecimal (minúsculas)
printf("%%X = %X <br>",$num1); // Número hexadecimal (mayúsculas)
printf("%%+d = %+d <br>",$num1); // Símbolo de indicador (positivo)
printf("%%+d = %+d <br>",$num2); // Símbolo de indicador (negativo)
?>

Ejemplo de ejecución

Ejemplo 4

Demostración de identificadores de cadena:

<?php
$str1 = "Hello";
$str2 = "Hello world!";
vprintf("[%s]<br>",array($str1));
vprintf("[%8s]<br>",array($str1));
vprintf("[%-8s]<br>",array($str1));
vprintf("[%08s]<br>",array($str1));
vprintf("[%'*8s]<br>",array($str1));
vprintf("[%8.8s]<br>",array($str2));
?>

Ejemplo de ejecución