(PHP 4, PHP 5, PHP 7)
explode — Разбивает строку с помощью разделителя
$delimiter
, string $string
[, int $limit
= PHP_INT_MAX
] ) : array
Возвращает массив строк, полученных разбиением строки
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] => три )
Замечание: Эта функция безопасна для обработки данных в двоичной форме.