PHP.mk документација

explode

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

function.explode.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека function.explode.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
explode

Референца за `function.explode.php` со подобрена типографија и навигација.

function.explode.php

explode

(PHP 4, PHP 5, PHP 7, PHP 8)

explodeПодели стринг со стринг

= NULL

explode(string $separator, string $string, int $limit = PHP_INT_MAX): array

Враќа низа од стрингови, од кои секој е подстринг од string формиран со делење на граници формирани од стринг separator.

Параметри

separator

Граница стринг.

string

, и враќа стринг со првиот карактер од

limit

Враќа limit е поставен и позитивен, вратената низа ќе содржи максимум од limit елементи со последниот елемент што го содржи остатокот од string.

Ако limit параметарот е негативен, сите компоненти освен последниот -limit се враќаат.

Ако limit параметарот е нула, тогаш ова се третира како 1.

Забелешка:

Пред PHP 8.0, implode() ги прифаќаше своите параметри во која било нарачка. explode() никогаш не го поддржувал ова: мора да се осигурате дека separator аргументот доаѓа пред string argument.

Вратени вредности

Враќа array of stringите создадени со делење на string параметар на граници формирани од separator.

Враќа separator е празен string (""), explode() фрла ValueError. Ако separator содржи вредност што не е содржана во string и негативен limit се користи, тогаш празен array ќе биде вратен, инаку а array containing string ќе биде вратено. Ако separator вредностите се појавуваат на почетокот или крајот на string, споменатите вредности ќе бидат додадени како празна array вредност или на првата или на последната позиција на вратеното array respectively.

Дневник на промени

Верзија = NULL
8.0.0 explode() сега ќе фрли ValueError when separator параметарот е даден како празен стринг (""). Претходно, explode() returned false instead.

Примери

Пример #1 explode() examples

<?php
// Example 1
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
echo
$pieces[0], PHP_EOL; // piece1
echo $pieces[1], PHP_EOL; // piece2

// Example 2
$data = "foo:*:1023:1000::/home/foo:/bin/sh";
list(
$user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo
$user, PHP_EOL; // foo
echo $pass, PHP_EOL; // *
?>

Пример #2 explode() примери за враќање

<?php
/*
A string that doesn't contain the delimiter will simply
return a one-length array of the original string.
*/
$input1 = "hello";
$input2 = "hello,there";
$input3 = ',';
var_dump( explode( ',', $input1 ) );
var_dump( explode( ',', $input2 ) );
var_dump( explode( ',', $input3 ) );

?>

Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред

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
= 'one|two|three|four';

// positive limit
print_r(explode('|', $str, 2));

// negative limit
print_r(explode('|', $str, -1));
?>

Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред

Array
(
    [0] => one
    [1] => two|three|four
)
Array
(
    [0] => one
    [1] => two
    [2] => three
)

Белешки

Забелешка: Пример #4 Користење на контексти на потоци

Види Исто така

  • preg_split() - Подели стринг по регуларен израз
  • str_split() - Претвори стринг во низа
  • mb_split() - Подели стринг со повеќе бајти користејќи регуларен израз
  • str_word_count() - Врати информации за зборовите што се користат во стринг
  • strtok() - Токенизирај стринг
  • implode() - Спој елементи од низа со стринг

Белешки од корисници 4 белешки

Гербен
пред 4 години
Note that an empty input string will still result in one element in the output array. This is something to remember when you are processing unknown input.

For example, maybe you are splitting part of a URI by forward slashes (like "articles/42/show" => ["articles", "42", "show"]). And maybe you expect that an empty URI will result in an empty array ("" => []). Instead, it will contain one element, with an empty string:

<?php

$uri = '';
$parts = explode('/', $uri);
var_dump($parts);

?>

Will output:

array(1) {
  [0]=>
  string(0) ""
}

And not:

array(0) {
}
marc
пред 2 години
If your data is smaller than the expected count with the list expansion:

<?php
$data = "foo:*:1023:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell,$nu) = explode(":", $data);
?>

The result is a warning not an error:

PHP Warning:  Undefined array key 7 in ...

The solution is to pad the array to the expected length:

<?php
$data = "foo:*:1023:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell,$nu) = array_pad( explode(":", $data), 8, ""); 
// where 8 is the count of the list arguments
?>
bocoroth
пред 5 години
Be careful, while most non-alphanumeric data types as input strings return an array with an empty string when used with a valid separator, true returns an array with the string "1"!

var_dump(explode(',', null)); //array(1) { [0]=> string(0) "" }
var_dump(explode(',', false)); //array(1) { [0]=> string(0) "" }

var_dump(explode(',', true)); //array(1) { [0]=> string(1) "1" }
Alejandro-Ihuit
3 години пред
If you want to directly take a specific value without having to store it in another variable, you can implement the following:

$status = 'Missing-1';
 
echo $status_only = explode('-', $status)[0];

// Missing
Навигација

Прелистувај сродни теми и функции.

На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.