(PHP 4, PHP 5, PHP 7)
explode — Разбивает строку с помощью разделителя
Описание
$delimiter , string $string [, int $limit = PHP_INT_MAX ] )Возвращает массив строк, полученных разбиением строки string с использованием delimiter в качестве разделителя.
Список параметров
delimiter-
Разделитель.
string-
Входная строка.
limit-
Если аргумент
limitявляется положительным, возвращаемый массив будет содержать максимумlimitэлементов, при этом последний элемент будет содержать остаток строкиstring.Если параметр
limitотрицателен, то будут возвращены все компоненты кроме последних —limit.Если
limitравен нулю, то он расценивается как 1.
Замечание:
По историческим причинам, функции implode() можно передавать аргументы в любом порядке, но для explode() это недопустимо. Убедитесь в том, что
delimiterуказан перед аргументомstring.
Возвращаемые значения
Возвращает массив (array) строк (string), созданный делением параметра string по границам, указанным параметром delimiter.
Если delimiter является пустой строкой («»), explode() возвращает FALSE. Если delimiter не содержится в string, и используется отрицательный limit, то будет возвращен пустой массив (array), иначе будет возвращен массив, содержащий string.
Список изменений
| Версия | Описание |
|---|---|
| 5.1.0 | Добавлена поддержка отрицательных значений limit |
Примеры
Пример #1 Пример использования explode()
<?php
// Пример 1
$pizza = "кусок1 кусок2 кусок3 кусок4 кусок5 кусок6";
$pieces = explode(" ", $pizza);
echo $pieces[0]; // кусок1
echo $pieces[1]; // кусок2
// Пример 2
$data = "foo:*:1023:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo $user; // foo
echo $pass; // *
?>
Пример #2 Пример возвращаемого значения explode()
<?php /* Строка, которая не содержит разделителя, будет просто возвращать массив с одним значением оригинальной строки. */ $input1 = "hello"; $input2 = "hello,there"; $input3 = ','; var_dump( explode( ',', $input1 ) ); var_dump( explode( ',', $input2 ) ); var_dump( explode( ',', $input3 ) ); ?>
Результат выполнения данного примера:
array(1)
(
[0] => string(5) "hello"
)
array(2)
(
[0] => string(5) "hello"
[1] => string(5) "there"
)
array(2)
(
[0] => string(0) ""
[1] => string(0) ""
)
Пример #3 Примеры с использованием параметра limit
<?php
$str = 'один|два|три|четыре';
// положительный лимит
print_r(explode('|', $str, 2));
// отрицательный лимит (начиная с PHP 5.1)
print_r(explode('|', $str, -1));
?>
Результат выполнения данного примера:
Array
(
[0] => один
[1] => два|три|четыре
)
Array
(
[0] => один
[1] => два
[2] => три
)
Примечания
Замечание: Эта функция безопасна для обработки данных в двоичной форме.

