Funzione sscanf() di PHP
Esempio
Analisi della stringa:
<?php $str = "age:30 weight:60kg"; sscanf($str,"age:%d weight:%dkg",$age,$weight); // Mostra tipo e valore var_dump($age,$weight); ?>
Definizione e uso
La funzione sscanf() analizza l'input proveniente dalla stringa in base al formato specificato. La funzione sscanf() analizza la stringa in base alla stringa di formato.
Se si passano due parametri al funzione, i dati vengono restituiti come array. Altrimenti, se si passano parametri aggiuntivi, i dati letti vengono memorizzati in questi parametri. Se il numero di delimitatori è maggiore del numero di variabili che li contengono, si verifica un errore. Tuttavia, se il numero di delimitatori è minore del numero di variabili che li contengono, le variabili aggiuntive contengono NULL.
Funzioni correlate:
Sintassi
sscanf(string,format,arg1,arg2,arg++)
Parametro | Descrizione |
---|---|
string | Obbligatorio. Specifica la stringa da leggere. |
format |
Obbligatorio. Specifica il formato da utilizzare. Valori di formato possibili:
Valori di formato aggiuntivi. Devono essere posizionati tra % e la lettera (ad esempio %.2f):
Commento:Se si utilizzano più valori di formato sopra menzionati, devono essere utilizzati nell'ordine indicato. |
arg1 | Opzionale. Variabile primaria per memorizzare i dati. |
arg2 | Opzionale. Variabile secondaria per memorizzare i dati. |
arg++ | Opzionale. Variabili terza e quarta per memorizzare i dati, ecc. |
Dettagli tecnici
Valore di ritorno: | Se si passano due parametri al funzione, i dati vengono restituiti sotto forma di array. Altrimenti, se si passano parametri aggiuntivi, i dati elaborati vengono memorizzati in questi parametri. Se il numero di delimitatori è maggiore del numero di variabili che li contengono, si verifica un errore. Tuttavia, se il numero di delimitatori è minore del numero di variabili che li contengono, le variabili aggiuntive contengono NULL. |
Versione PHP: | 4.0.1+ |
Più esempi
Esempio 1
Usare i valori di formato %s, %d e %c:
<?php $str = "Se dividete 4 per 2 otterrete 2"; $format = sscanf($str,"%s %s %s %d %s %d %s %s %c"); print_r($format); ?>