Forum und email

strtok

(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.

Example#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:

Example#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"

Example#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)

Avviso

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().