(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] => три )
Примечания
Замечание: Эта функция безопасна для обработки данных в двоичной форме.