Manuale PHP
Indietro |  | Avanti

# strtok

(PHP 3, PHP 4, PHP 5)

strtok -- Suddivide una stringa in token

## Descrizione

string strtok ( string str, string token )

strtok() suddivide la stringa(str) in piccole stringhe (tokens), in cui ciascun token è delimitato dal carattere indicato in token. 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 !== false) { 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)

Avvertimento
Questa funzione può restituire il Booleano `FALSE`, ma può anche restituire un valore non-Booleano valutato come `FALSE`, come ad esempio 0 o "". Per favore fare riferimento alla sezione Booleans per maggiori informazioni. Usare l'operatore === per controllare il valore restituito da questa funzione.

Vedere anche: split() e explode().

Indietro | Partenza | Avanti
strstr | Risali | strtolower