(PHP 4, PHP 5)
strtok — Разбивает строку на токены
$str
, string $token
)$token
)
strtok() разбивает строку
str
на подстроки (токены), используя
в качестве разделителей символы из token
.
Например, строку "This is an example string" можно разбить на
отдельные слова используя пробел в качестве разделителя.
Заметьте, что исходная строка передается только при первом вызове этой функции. Последующим вызовам передаются только разделители, так как эта функция сохраняет исходную строку и запоминает позицию в этой строке между вызовами. Для работы с новой строкой нужно снова вызвать функцию с двумя аргументами. Обратите внимание, что в параметре token можно использовать несколько разделителей. Строка будет делиться по любому найденному символу, присутствующему в этом параметре.
str
Строка (string), разбиваемая на подстроки (токены).
token
Разделитель строки str
.
Токен (string).
Пример #1 Пример использования strtok()
<?php
$string = "This is\tan example\nstring";
/* В качестве разделителей используем пробел, табуляцию и перевод строки */
$tok = strtok($string, " \n\t");
while ($tok !== false) {
echo "Word=$tok<br />";
$tok = strtok(" \n\t");
}
?>
Начиная с PHP 4.1.0, был изменен способ обработки пустых подстрок. До версии 4.1.0 эта функция возвращала пустые подстроки, а начиная с 4.1.0 эти подстроки пропускаются.
Пример #2 Старый способ обработки пустых подстрок функцией strtok()
<?php
$first_token = strtok('/something', '/');
$second_token = strtok('/');
var_dump($first_token, $second_token);
?>
Результат выполнения данного примера:
string(0) "" string(9) "something"
Пример #3 Новый способ обработки пустых подстрок функцией strtok()
<?php
$first_token = strtok('/something', '/');
$second_token = strtok('/');
var_dump($first_token, $second_token);
?>
Результат выполнения данного примера:
string(9) "something" bool(false)
Эта функция
может возвращать как boolean FALSE
, так и не-boolean значение,
которое приводится к FALSE
. За более подробной информацией обратитесь к разделу
Булев тип. Используйте оператор === для проверки значения,
возвращаемого этой функцией.