본문 바로가기

IT

정규 표현식 preg_split(문자열 나누기)한글 깨짐 현상

정규 표현식 preg_split(문자열 나누기)한글 깨짐 현상




 <?php

$str = "안녕, 한글아 너는 깨질꺼니?";


//" ", \r, \t, \n, \f를 포함하여 콤마와 스페이스로 나누기

$flag1 = preg_split('/[\s,]+/', $str, -1, PREG_SPLIT_NO_EMPTY);


//문자열을 구성문자로 나누기

$flag2 = preg_split('//', $str, -1, PREG_SPLIT_NO_EMPTY);


//시작위치로 문자열을 나누기

$flag3 = preg_split('/ /', $str, -1, PREG_SPLIT_OFFSET_CAPTURE);


print_r($str);

echo "<br><br>";

print_r($flag1);

echo "<br><br>";

print_r($flag2);

echo "<br><br>";

print_r($flag3);

?>


test2는 한글이 깨진다.



이때,


 $flag2 = preg_split('//u', $str, -1, PREG_SPLIT_NO_EMPTY);

이렇게u를 붙여 주면 한글이 안 깨지고 정상 표현 된다.