Cadena formateada de salida:
<?php$number = 9;$str = "Beijing";vprintf("Hay %u millones de bicicletas en %s.",array($number,$str));?>La función vprintf() genera una cadena formateada.
A diferencia de printf(), los argumentos en vprintf() están en una matriz. Los elementos de la matriz se insertarán en la cadena principal con el signo de porcentaje (%). Esta función se ejecuta paso a paso. En el primer signo % se inserta el primer elemento de la matriz, en el segundo signo % se inserta el segundo elemento de la matriz, y así sucesivamente.
Nota: Si hay más símbolos % que parámetros arg, debe utilizar marcadores de posición. El comodín se inserta después del símbolo % y consta de un número y "$". Vea el Ejemplo 2.
Consejo: Funciones relacionadas: sprintf(), printf(), vsprintf(), fprintf() y vfprintf()
vprintf( formato,argarray )
parámetro | describir |
---|---|
formato | Requerido. Especifica una cadena y cómo se deben formatear las variables que contiene. Posibles valores de formato: %% - devuelve un signo de porcentaje % %b - número binario %c - el carácter correspondiente al valor ASCII %d - número decimal con signo (negativo, 0, positivo) %e: utilice notación científica en minúsculas (por ejemplo, 1,2e+2) %E: utilice notación científica en mayúsculas (por ejemplo, 1,2E+2) %u - Número decimal sin signo (mayor o igual a 0) %f - número de punto flotante (configuración local) %F - número de coma flotante (configuración no nativa) %g - la versión más corta de %e y %f %G - %E y %f más cortos %o - número octal %s - cadena %x - número hexadecimal (letras minúsculas) %X - número hexadecimal (letras mayúsculas) Valores de formato adicionales. Debe colocarse entre % y una letra (p. ej. %.2f): + (Agregue + o - delante de un número para definir el signo del número. De forma predeterminada, solo se marcan los números negativos y los números positivos no) ' (Especifica qué usar como relleno, el valor predeterminado son espacios. Debe usarse con un especificador de ancho. Por ejemplo: %'x20s (use "x" como relleno)) - (valor variable de ajuste izquierdo) [0-9] (especifica el ancho mínimo del valor de la variable) .[0-9] (especifica el número de decimales o la longitud máxima de la cadena) Nota: Si se utilizan varios valores de formato anteriores, deben usarse en el orden anterior y no se pueden alterar. |
Argarray | Requerido. Una matriz con parámetros que se insertarán en la cadena de formato en % símbolos. |
Valor de retorno: | Devuelve la longitud de la cadena de salida. |
---|---|
Versión PHP: | 4.1.0+ |
Utilice el valor de formato %f:
<?php$num1 = 123;$num2 = 456;vprintf("%f%f",array($num1,$num2));?>Utilice marcadores de posición:
<?php$número = 123;vprintf("Con 2 decimales: %1$.2f<br>Sin decimales: %1$u",array($número));?>Utilice printf() para demostrar todos los valores de formato posibles:
<?php$num1 = 123456789;$num2 = -123456789;$char = 50; // El carácter ASCII 50 es 2// Nota: El valor de formato "%%" devuelve un signo de porcentajeprintf("%%b = %b <br>",$num1); // Número binarioprintf("%%c = %c <br>",$char); // El código ASCII Characterprintf("%%d = %d <br>",$num1); // Número decimal con signoprintf("%%d = %d <br>",$num2); = %e <br>",$num1); // Notación científica (minúsculas)printf("%%E = %E <br>",$num1); // Notación científica (mayúscula)printf("%%u = %u <br>",$num1); // Número decimal sin signo (positivo)printf("%%u = %u <br>",$num2); número decimal (negativo)printf("%%f = %f <br>",$num1 // Número de punto flotante (configuración local)printf("%%F = %F); <br>",$num1); // Número de punto flotante (no reconoce la configuración local)printf("%%g = %g <br>",$num1); // Más corto de %e y %fprintf(" %%G = %G <br>",$num1); // Más corto que %E y %fprintf("%%o = %o <br>",$num1); // Número octalprintf("%%s = %s <br>",$num1); // Stringprintf("%%x = %x <br>",$num1); // Número hexadecimal (minúscula)printf("%%X = %X <br >",$num1); // Número hexadecimal (mayúscula)printf("%%+d = %+d <br>",$num1); // Especificador de signo (positivo)printf("%%+d = %+d <br>",$num2); // ¿Especificador de signo (negativo)?>Demostración de especificadores de cadenas:
<?php$str1 = "Hola";$str2 = "Hola mundo!";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));