mb_str_split()
함수의 사용법
mb_str_split()
함수는
한글과 같은 multi-byte 문자열을 원하는 일정한 길이의 부분 문자열로 분할하여 배열로 변환하는 함수입니다.
반환 값은 분할된 부분 문자열을 담은 배열입니다.
str_split()
함수와 거의 동일한 기능을 하지만, 한글과 같은 multi-byte 문자열에서 안전하게 작동하는 기능을 제공한다는 큰 차이점이 있습니다.
이 함수의 관련 함수를 참조하세요.
mb_str_split()
함수의 형식은 다음과 같습니다.
구문
매개변수
$string |
필수. 분할할 대상 문자열입니다. |
---|---|
$length |
옵션. 각 부분 문자열의 길이를 지정하는 매개변수입니다. 이 매개변수를 사용하지 않으면 기본값으로 각 문자를 하나의 요소로 하는 배열이 생성됩니다. |
$encoding |
옵션. 문자열 인코딩을 지정합니다. 이 매개변수가 생략되거나 null 일 경우 내부 문자 인코딩 값이 사용됩니다. 그리고 이 매개변수는 지원되는 인코딩 중 하나를 나타내는 문자열을 지정할 수 있습니다. |
반환 값
매개변수로 전달된 $length
길이의 부분 문자열로 분할하여 배열로 변환해서 반환합니다.
이때 길이의 크기는 문자 단위 기준입니다. 즉, 한글과 같은 multi-byte 문자열을 지원합니다.
반면에, str_split()
함수는 multi-byte 문자열을 지원하지 않습니다. 길이의 크기는 1byte 기준입니다.
변경 로그
PHP 8.0.0 | PHP 8.0.0부터 $encoding 매개변수가 이제 nullable하게 변경되었습니다. 이것은 이제 encoding 매개변수를 생략하거나 null 로 설정할 수 있음을 의미합니다. 이전에는 반드시 유효한 인코딩을 지정해야 했었습니다. |
---|---|
PHP 8.0.0 | PHP 8.0.0부터 함수가 실패할 경우 더 이상 false 를 반환하지 않습니다. 이전에는 함수가 실패할 때 false 를 반환했지만, 이제는 실패한 경우에도 반환 값이 false 가 아닙니다. 대신에 함수는 항상 배열을 반환하게 됩니다. 실패한 경우에는 빈 배열이 반환됩니다. |
활용 예제
mb_str_split()
함수는 문자열을 부분 문자열로 쉽게 분할할 수 있기 때문에 여러 가지 유용한 상황에서 활용할 수 있습니다.
몇 가지 예제를 살펴보겠습니다.
문자열을 역순으로 출력하기
문자열을 역순으로 출력하려면 mb_str_split()
함수를 사용하여 문자열을 배열로 분할한 다음 array_reverse()
함수를 사용하여 배열을 역순으로 정렬할 수 있습니다.
주민등록번호 등에서 일부 정보 숨기기
주민등록번호 등의 민감한 정보에서 특정 부분을 숨기려면 mb_str_split()
함수를 사용하여 문자열을 분할한 다음 일부를 수정할 수 있습니다.
위의 예제들은 mb_str_split()
함수를 사용하여 문자열을 쉽게 다룰 수 있는 방법을 보여줍니다. 이 함수는 문자열을 부분 문자열로 나누는 데 유용하며, 이를 통해 문자열을 다양한 방식으로 가공할 수 있습니다.