strtok
(PHP 4, PHP 5)
strtok — Χωρίστε το string σε tokens
Περιγραφή
Η συνάρτηση strtok() χωρίζει ένα string (arg1 ) σε μικρότερα (tokens), με το κάθε ένα να οριοθετείται από τους χαρακτήρες της παραμέτρου arg2 . Έτσι, εάν έχετε το string "This is an example string" μπορείτε να το χωρίσετε σε tokens, που το κάθε ένα να αντιστοιχεί σε μία λέξη με το να χρησιμοποιήσετε ως token ένα κενό.
Example#1 Παράδειγμα χρήσης της 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");
}
?>
Παρατηρείστε ότι μόνο η πρώτη κλήση της strtok χρησιμοποιεί το όρισμα string. Κάθε επόμενη κλήση της συνάρτησης χρειάζεται μόνο το token που θα χρησιμοποιήσει, αφού εντοπίζει τη θέση του στο τρέχων string. Για να ξαναξεκινήσετε, ή για να κάνετε tokenize ένα νέο string μπορείτε απλά να καλέσετε τη strtok και πάλι με το όρισμα string για να ξεκινήσετε. Μπορείτε, επίσης, να χρησιμοποιείσετε πολλαπλά tokens στην παράμετρο token. Το string θα χωρίζεται σε tokens κάθε φορά που συναντάται κάποιος από αυτούς τους χαρακτήρες.
Η συμπεριφορά της συνάρτησης στην εύρεση ενός κενού τμήματος άλλαξε με την PHP 4.1.0. Σε παλιότερες εκδόσεις θα υπήρχε ως έξοδος ένα κενό string, ενώ η νέα σωστή συμπεριφορά προσπερνάει απλά αυτό το μέρος του string:
Example#2 Παλιά συμπεριφορά της strtok()
<?php
$first_token = strtok('/something', '/');
$second_token = strtok('/');
var_dump ($first_token, $second_token);
/* Output:
string(0) ""
string(9) "something"
*/
?>
Example#3 Νέος τρόπος λειτουργίας της strtok()
<?php
$first_token = strtok('/something', '/');
$second_token = strtok('/');
var_dump ($first_token, $second_token);
/* Output:
string(9) "something"
bool(false)
*/
?>
Προσέχετε, επίσης, να μην είναι τα tokens σας ίσα με το "0". Η περίπτωση αυτή μεταφράζεται σε τιμή FALSE.