PHP

[PHP] mb_substr 로 한글 문자열을 깨지지 않고 안전하게 분리하기


[PHP] mb_substr 로 한글 문자열을 깨지지 않고 안전하게 분리하기


  2023-09-10  349 View 공개

PHP의 mb_substr 함수는 멀티바이트 문자열을 안전하게 자를 수 있게 해주는 함수이다.
이 함수는 UTF-8 또는 기타 멀티바이트 문자열 인코딩을 사용할 때 특히 유용한다.
한글은 멀티바이트 문자열에 속하므로, mb_substr을 사용하면 한글을 안전하게 자를 수 있다.

mb_substr 함수를 사용하는 방법은 다음과 같다.

 mb_substr 기본용법

PHP
$string = '안녕하세요., Mblog.kr 입니다.';
$substring = mb_substr($string, 0, 5, 'utf-8');
echo $substring; // 출력: 안녕하세요
 

함수 파라미터 설명

① $string : 자를 문자열이다.
② 0 : 시작 위치이다. 0부터 시작하므로, 위 예제에서는 문자열의 처음부터 시작한다.
③ 5 : 반환할 문자의 길이이다. 위 예제에서는 문자열의 처음부터 5개의 문자를 반환한다.
④ 'utf-8' : 사용할 문자열의 인코딩이다. 한글을 처리할 때는 주로 'utf-8'을 사용한다.

 안전한 문자열 자르기

만약 문자열을 특정 길이까지 자르고, 그 이후에는 '...' 같은 접미사를 붙이고 싶다면, 아래와 같이 할 수 있다.
PHP
function safe_substr($str, $length, $suffix = '...') {
   if (mb_strlen($str, 'utf-8') <= $length) {
     return $str;
   }
   return mb_substr($str, 0, $length, 'utf-8') . $suffix;
}
 
$string = '안녕하세요., Mblogkr 이다.';
echo safe_substr($string, 5); // 출력: 안녕하세요...

Tags  #PHP  #mb_substr  #한글문자열자르기  



🚩 PHP 글 모음 (총 56 건)

[PHP] 공공데이타포탈 XML 자료 파싱하기

Last Updated : 2023-09-30
#XML파싱 #공공데이타포탈

이메일 존재여부 확인

Last Updated : 2023-09-29

[PHP] 30분뒤 자동 로그아웃

Last Updated : 2023-09-29

[PHP] 타임존을 한국시간으로 설정하는 방법

Last Updated : 2023-09-29
#PHP #TIMEZONE

[PHP] 동시에 한 PC 에서만 로그인을 제한하는 방법

Last Updated : 2023-09-29
#php

[PHP] mb_substr 로 한글 문자열을 깨지지 않고 안전하게 분리하기

Last Updated : 2023-09-29
#PHP #mb_substr #한글문자열자르기