Strings explode

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

explode — 문자열을 문자열로 분할


설명

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

문자열 배열을 반환합니다. 각 배열은 문자열 separator로 형성된 경계에서 분할하여 형성된 string의 하위 문자열입니다.


매개변수

separator
경계 문자열입니다.
string
입력 문자열입니다.
limit
limit이 설정되고 양수이면 반환된 배열에는 string의 나머지 부분을 포함하는 마지막 요소와 함께 최대 limit 요소가 포함됩니다.

limit 매개변수가 음수이면 마지막 limit를 제외한 모든 구성요소가 리턴됩니다.

limit 매개변수가 0이면 1로 처리됩니다.

메모: PHP 8.0 이전에는 implode()가 매개변수를 어느 순서로든 받아들였습니다. explode()은 이를 지원한 적이 없습니다. separator 인수가 string 인수 앞에 와야 합니다.


반환 값

separator로 형성된 경계에서 string 매개변수를 분할하여 생성된 문자열 배열을 반환합니다.

separator가 빈 문자열("")인 경우 explode()ValueError를 발생시킵니다. separatorstring에 포함되지 않은 값을 포함하고 음수 limit가 사용되면 빈 배열이 반환되고, 그렇지 않으면 string이 포함된 배열이 반환됩니다. separator 값이 string의 시작 또는 끝에 나타나면 해당 값은 반환된 배열의 첫 번째 또는 마지막 위치에 각각 빈 배열 값으로 추가됩니다.


변경 로그

버전 설명
8.0.0 explode()은 이제 separator 매개변수에 빈 문자열("")이 주어지면 ValueError를 발생시킵니다. 이전에는 explode()가 대신 false를 반환했습니다.

Examples

예제 #1 explode() 예제

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

// Example 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() return 예제

                  
<?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 ) );

?>
                  
                

위의 예는 다음을 출력합니다.

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));
?>
                  
                

위의 예는 다음을 출력합니다.

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

메모

참고: 이 함수는 바이너리 안전합니다.


기타