explode
(PHP 4, PHP 5, PHP 7)
explode — Разбивает строку с помощью разделителя
Описание
$separator
, string $string
, int $limit
= PHP_INT_MAX
) : array
Возвращает массив строк, полученных разбиением строки
string
с использованием
separator
в качестве разделителя.
Список параметров
-
separator
-
Разделитель.
-
string
-
Входная строка.
-
limit
-
Если аргумент
limit
является положительным, возвращаемый массив будет содержать максимумlimit
элементов, при этом последний элемент будет содержать остаток строкиstring
.Если параметр
limit
отрицателен, то будут возвращены все компоненты, кроме последних -limit
.Если
limit
равен нулю, то он расценивается как 1.
Замечание:
По историческим причинам, функции implode() можно передавать аргументы в любом порядке, но для explode() это недопустимо. Убедитесь в том, что
separator
указан перед аргументомstring
.
Возвращаемые значения
Возвращает массив (array) строк (string),
созданный делением параметра string
по
границам, указанным параметром separator
.
Если separator
является пустой строкой (""),
explode() возвращает false
. Если
separator
не содержится в string
,
и используется отрицательный limit
, то
будет возвращен пустой массив (array), иначе будет
возвращен массив, содержащий string
.
Примеры
Пример #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] => три )
Примечания
Замечание: Эта функция безопасна для обработки данных в двоичной форме.
Смотрите также
- preg_split() - Разбивает строку по регулярному выражению
- str_split() - Преобразует строку в массив
- mb_split() - Разделение строк в многобайтных кодировках, используя регулярное выражение
- str_word_count() - Возвращает информацию о словах, входящих в строку
- strtok() - Разбивает строку на токены
- implode() - Объединяет элементы массива в строку