String formatada de saída:
<?php$number = 9;$str = "Pequim";printf("Existem %u milhões de bicicletas em %s.",$number,$str);?>A função printf() gera uma string formatada.
Os parâmetros arg1, arg2, ++ serão inseridos na string principal no símbolo do sinal de porcentagem (%). Esta função é executada passo a passo. No primeiro sinal %, insira arg1, no segundo sinal %, insira arg2 e assim por diante.
Nota: Se houver mais símbolos % do que parâmetros arg, você deverá usar espaços reservados. O espaço reservado é inserido após o símbolo % e consiste em um número e "$". Veja o Exemplo 2.
Dica: Funções relacionadas: sprintf(), vprintf(), vsprintf(), fprintf() e vfprintf()
printf( formato,arg1,arg2,arg++ )
parâmetro | descrever |
---|---|
formatar | Obrigatório. Especifica uma string e como as variáveis dentro dela devem ser formatadas. Valores de formato possíveis: %% - retorna um sinal de porcentagem % %b - número binário %c - o caractere correspondente ao valor ASCII %d - número decimal com sinal (negativo, 0, positivo) %e - Use notação científica em letras minúsculas (por exemplo, 1.2e+2) %E - Use notação científica em maiúsculas (por exemplo, 1.2E+2) %u - Número decimal sem sinal (maior ou igual a 0) %f - número de ponto flutuante (configuração local) %F - número de ponto flutuante (configuração não nativa) %g - a versão mais curta de %e e %f %G - %E e %f mais curtos %o - número octal %s - sequência %x - número hexadecimal (letras minúsculas) %X - número hexadecimal (letras maiúsculas) Valores de formato adicionais. Deve ser colocado entre % e uma letra (ex. %.2f): + (Adicione + ou - na frente de um número para definir o sinal do número. Por padrão, apenas números negativos são marcados e números positivos não são marcados) ' (Especifica o que usar como preenchimento, o padrão é espaços. Deve ser usado com um especificador de largura. Por exemplo: %'x20s (use "x" como preenchimento)) - (valor da variável de ajuste esquerdo) [0-9] (especifica a largura mínima do valor da variável) .[0-9] (especifica o número de casas decimais ou o comprimento máximo da string) Nota: Se vários valores de formato acima forem usados, eles deverão ser usados na ordem acima e não poderão ser interrompidos. |
arg1 | Obrigatório. Especifica os parâmetros a serem inseridos no primeiro sinal % na sequência de formato. |
arg2 | Opcional. Especifica os parâmetros a serem inseridos na sequência de formato no segundo sinal %. |
arg++ | Opcional. Especifica os parâmetros a serem inseridos na string de formato no terceiro, quarto, etc. % símbolos. |
Valor de retorno: | Retorna o comprimento da string de saída. |
---|---|
Versão PHP: | 4+ |
Use o valor de formato %f:
<?php$número = 123;printf("%f",$número);?>Use espaços reservados:
<?php$number = 123;printf("Com 2 casas decimais: %1$.2f<br>Sem casas decimais: %1$u",$number);?>Demonstração de todos os valores de formato possíveis:
<?php$num1 = 123456789;$num2 = -123456789;$char = 50; // O caractere ASCII 50 é 2// Nota: O valor do formato "%%" retorna um sinal de porcentagemprintf("%%b = %b <br>",$num1); // Número binárioprintf("%%c = %c <br>",$char); // O ASCII Characterprintf("%%d = %d <br>",$num1); // Número decimal assinadoprintf("%%d = %d <br>",$num2); = %e <br>",$num1); // Notação científica (minúsculas)printf("%%E = %E <br>",$num1); // Notação científica (maiúsculas)printf("%%u = %u <br>",$num1); // Número decimal não assinado (positivo)printf("%%u = %u <br>",$num2); número decimal (negativo)printf("%%f = %f <br>",$num1); // Número de ponto flutuante (configurações locais cientes)printf("%%F = %F <br>",$num1); // Número de ponto flutuante (sem reconhecimento de configurações locais)printf("%%g = %g <br>",$num1); // Menor de %e e %fprintf(" %%G = %G <br>",$num1); // Menor entre %E e %fprintf("%%o = %o <br>",$num1); // Octal numberprintf("%%s = %s <br>",$num1); // Stringprintf("%%x = %x <br>",$num1); // Número hexadecimal (minúsculo)printf("%%X = %X <br >",$num1); // Número hexadecimal (maiúsculo)printf("%%+d = %+d <br>",$num1); // Especificador de sinal (positivo)printf("%%+d = %+d <br>",$num2); // Especificador de sinal (negativo)?>Demonstração de especificadores de string:
<?php$str1 = "Olá";$str2 = "Olá mundo!";printf("[%s]<br>",$str1);printf("[%8s]<br>",$str1) ;printf("[%-8s]<br>",$str1);printf("[%08s]<br>",$str1); printf("[%'*8s]<br>",$str1);printf("[%8.8s]<br>",$str2);?>