Руководство по PHP
Пред. |  | След.

# strtok

(PHP 3, PHP 4, PHP 5)

strtok -- Разбивает строку

## Описание

string strtok ( string arg1, string arg2 )

strtok() разбивает строку `arg1` на подстроки, используя в качесве разделителей символы из `arg2`. Например строку "This is an example string" можно разбить на отдельные слова.

Пример 1. Пример использования strtok()

`<?php $string = "This is\tan example\nstring"; /* в качестве разделителей используем пробел, табуляцию и перевод строки */ $tok = strtok($string, " \n\t"); while ($tok) { 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)

Помните также о том, что может быть возвращена подстрока "0". В логических выражениях это значение может соответствовать `FALSE`.

См. также описание функций split() и explode().

Пред. | Начало | След.
strstr | Уровень выше | strtolower