Analise uma string:
<?php$str = "idade:30 peso:60kg";sscanf($str,"idade:%d peso:%dkg",$idade,$peso);// mostra tipos e valoresvar_dump($idade,$peso );?>A função sscanf() analisa a entrada de uma string de acordo com um formato especificado. A função sscanf() analisa uma string em uma variável baseada em uma string de formato.
Se você passar apenas dois argumentos para a função, os dados serão retornados como um array. Caso contrário, se parâmetros adicionais forem passados, os dados analisados serão armazenados nesses parâmetros. Se o número de separadores for maior que o número de variáveis que os contêm, ocorre um erro. No entanto, se o número de separadores for menor que o número de variáveis que os contêm, as variáveis extras conterão NULL.
Funções relacionadas:
printf() - gera uma string formatada
sprintf() - grava uma string formatada em uma variável
sscanf( string,formato,arg1,arg2,arg++ )
parâmetro | descrever |
---|---|
corda | Obrigatório. Especifica a string a ser lida. |
formatar | Obrigatório. Especifica o formato a ser usado. Valores de formato possíveis: %% - retorna um sinal de porcentagem % %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) %u - Número decimal sem sinal (maior ou igual a 0) %f - número de ponto flutuante %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 | Opcional. A primeira variável para armazenar dados. |
arg2 | Opcional. Uma segunda variável para armazenar os dados. |
arg++ | Opcional. A terceira e quarta variáveis que armazenam dados. E assim por diante. |
Valor de retorno: | Se você passar apenas dois argumentos para a função, os dados serão retornados como um array. Caso contrário, se parâmetros adicionais forem passados, os dados analisados serão armazenados nesses parâmetros. Se o número de separadores for maior que o número de variáveis que os contêm, ocorre um erro. No entanto, se o número de separadores for menor que o número de variáveis que os contêm, as variáveis extras conterão NULL. |
---|---|
Versão PHP: | 4.0.1+ |
Use valores de formato %s, %d e %c:
<?php$str = "Se você dividir 4 por 2 você obterá 2";$format = sscanf($str,"%s %s %s %d %s %d %s %s %c"); print_r($formato);?>