Descrizione
string
strtok ( string arg1, string arg2 )
strtok() suddivide la stringa(arg1)
in piccole stringhe (tokens), in cui ciascun token è delimitato dal
carattere indicato in arg2.
Perciò, se si ha la stringa "This is an example string" la si può
dividere nelle singole parole utilizzando come separatore
lo spazio.
Esempio 1. Esempio di uso di strtok()
<?php $string = "This is\tan example\nstring"; /* Use tab and newline as tokenizing characters as well */ $tok = strtok($string, " \n\t"); while ($tok) { echo "Word=$tok<br />"; $tok = strtok(" \n\t"); } ?>
|
|
Soltanto la prima chiamata a strtok() utilizza il parametro stringa.
Ogni chiamata successiva richiede solo il carattere da utilizzare, poichè
la funzione tiene traccia di dove è arrivata nella stringa corrente. Per ripartire da capo
o iniziare con una nuova stringa ri-chiamare strtok()
con il parametro stringa. Nota: si possono mettere più caratteri
come separatori di stringhe. Il testo iniziale verrà suddiviso
quando viene trovato uno qualsiasi di questi caratteri.
Attenzione che soltanto la prima chiamata di strtok userà l'argomento stringa.
Il comportamento su segmenti vuoti è cambiato dal PHP 4.1.0. La vecchia
versione restituiva una stringa vuota, mentre la nuova, più correttamente,
salta quella parte di stringa:
Esempio 2. Vecchio comportamento di strtok()
<?php $first_token = strtok('/something', '/'); $second_token = strtok('/'); var_dump($first_token, $second_token); ?>
|
Output:
string(0) ""
string(9) "something" |
|
Esempio 3. Nuovo comportamento di strtok()
<?php $first_token = strtok('/something', '/'); $second_token = strtok('/'); var_dump($first_token, $second_token); ?>
|
Output:
string(9) "something"
bool(false) |
|
Fare attenzione ai token uguali a "0". Questi possono essere
considerati FALSE nelle espressioni condizionali.
Vedere anche: split() e
explode().