(PHP 4 >= 4.0.1, PHP 5, PHP 7)
sscanf — Interpreta a entrada de uma string de acordo com um formato
A função sscanf() é análoga a printf().
sscanf() lê da string str
e interpreta
ela de acordo com o formato
especificado. Como é descrito
na documentação para sprintf().
Qualquer espaço em branco na string de formato será comparada com qualquer espaço em branco na string de entrada. Isto significa que até mesmo um tab \t na string de formato pode ser comparada com um caractere de espaço simples na string de entrada.
Se apenas dois parâmetros forem passados para esta função, os valores interpretados serão retornados como array. Caso contrário, se parâmetros opcionais são passados, a função retornará o número de valores atribuídos. Os parâmetros opcionais precisam ser passados por referência.
Exemplo #1 Exemplo da sscanf()
<?php
// Pegando o número serial
list($serial) = sscanf("SN/2350001","SN/%d");
// e a data de criação
$mandate = "January 01 2000";
list($month, $day, $year) = sscanf($mandate,"%s %d %d");
echo "O Item $serial foi criado em: $year-".substr($month,0,3)."-$day\n";
?>
Se parâmetros opcionais são passados, a função retornará o número de valores assumidos.
Exemplo #2 sscanf() - usando parâmetros opcionais
<?php
// pega informação do autor e gera uma entrada de DocBook
$auth = "24\tLewis Carroll";
$n = sscanf($auth,"%d\t%s %s", $id, $first, $last);
echo "<author xml:id='$id'>
<firstname>$first</firstname>
<surname>$last</surname>
</author>\n";
?>