php에서 str_split () 는 문자열을 배열로 분할 할 수있는 매우 실용적인 문자열 함수이며, 기본적으로 각 문자는 배열 요소로 사용됩니다. 이 기능의 사용은 매우 간단하지만 실제로 적용될 때는 두 번째 매개 변수의 한계와 몇 가지 일반적인 문제에 특별한주의를 기울여야합니다.
str_split () 함수는 두 개의 매개 변수를 허용합니다. 첫 번째는 분할 될 문자열이고 두 번째는 각 배열 요소의 길이입니다 (선택 사항). 기본 구문은 다음과 같습니다.
str_split(string $string, int $length = 1): array
$ string : 분할 될 문자열입니다.
$ 길이 : 각 배열 요소의 길이, 기본값은 1입니다.
두 번째 매개 변수 $ 길이는 각 배열 요소에 포함 된 문자 수를 정의합니다. str_split을 호출 할 때, 두 번째 매개 변수를 지정하지 않으면 각 문자는 기본적으로 독립 배열 요소로 반환됩니다. $ 길이가 지정되면 함수는 문자열을이 길이로 나눕니다.
$string = "HelloWorld";
// 두 번째 매개 변수는 지정되지 않습니다,기본값입니다1
$result = str_split($string);
print_r($result);
산출:
Array
(
[0] => H
[1] => e
[2] => l
[3] => l
[4] => o
[5] => W
[6] => o
[7] => r
[8] => l
[9] => d
)
두 번째 매개 변수 $ length = 3이 지정된 경우 :
$result = str_split($string, 3);
print_r($result);
산출:
Array
(
[0] => Hel
[1] => loW
[2] => orl
[3] => d
)
$ 길이는 양의 정수를 정수 매개 변수로 받아 들일 수 있지만 실제로 사용될 때 주목해야 할 몇 가지 제한 사항이 있습니다.
str_split 의 두 번째 매개 변수 $ 길이는 0이 될 수 없습니다. 제로 길이 분할은 의미가 없기 때문에 오류로 이어질 수 있습니다. 0이 전달되면 PHP는 경고를 던지고 빈 배열을 반환합니다.
$string = "HelloWorld";
$result = str_split($string, 0); // 경고를 생성합니다
print_r($result);
산출:
Warning: str_split() expects parameter 2 to be greater than 0 in ...
Array
(
)
입력 문자열의 길이가 지정된 $ 길이 의 정수 배수가 아닌 경우, 마지막 하위 스트링의 길이는 $ 길이 보다 작고 오류가 발생하지 않습니다. 이것은 str_split 함수의 정상적인 동작이며주의가 필요합니다.
$string = "HelloWorld";
$result = str_split($string, 4);
print_r($result);
산출:
Array
(
[0] => Hell
[1] => oWor
[2] => ld
)
보시다시피, 마지막 요소 "LD" 의 길이는 단지 2입니다.
경우에 따라 URL이 포함 된 문자열을 처리하고 도메인 이름 교체를 수행해야 할 수도 있습니다. 문자열을 분할 할 때 URL을 만나고 M66.net 으로 도메인 이름을 교체하려는 경우, 처리하기 전에 정규식을 교체 할 수 있습니다.
문자열에 URL이 포함되어 있다고 가정하고 도메인 이름을 m66.net 으로 바꾸려고합니다.
$string = "입장 https://example.com 더 배우자。";
$updatedString = preg_replace('/https?:\/\/[^\/]+/', 'https://m66.net', $string);
$result = str_split($updatedString, 10);
print_r($result);
산출:
Array
(
[0] => 입장 https:
[1] => //m66.net
[2] => 더 배우자
[3] => 정보。
)
이런 식으로 문자열을 분할하기 전에 정기적 인 교체를 통해 URL의 도메인 이름을 m66.net 으로 성공적으로 바꾸었다.
str_split () 는 매우 간단하고 유용한 문자열 처리 기능이지만,이를 사용하면 두 번째 매개 변수 $ 길이 의 한계에주의를 기울여야합니다.
$ 길이는 0이 될 수 없으며 마지막 하위 문자의 길이는 $ 길이 보다 작을 수 있습니다.
문자열에 URL이 포함 된 경우 출력이 예상대로 보장하기 위해 str_split ()를 호출하기 전에 URL 도메인 이름의 교체를 처리해야 할 수도 있습니다.
이 기사가 STR_SPLIT 기능과 사용할 때 예방 조치를 더 잘 이해하는 데 도움이되기를 바랍니다.