php utf-8 문자셋에서 이름의 일부를 '*'로 처리할 땐 어떻게 하나요?

0 투표
493 조회
홍*동

이런식으로 이름을 출력하고 싶습니다.

euc-kr 방식에서는 substr_replace 함수를 이용할 수 있는데 utf-8에서는 잘 안되네요.
요청 : 2015년 1월 28일 서버 언어 분류 내 작성자 query (2,020 포인트)

1 개의 답변

0 투표

바이트 기준 아닌 글자수 기준으로 잘라내는 mb_substr함수를 사용하시면 됩니다.

<?php
$name = '홍길동';
$newName = mb_substr($name, 0, 1, 'utf-8').'*'.mb_substr($name, -1, 1, 'utf-8');
echo $newName;
?>

이런식으로 사용하시면 되지 않을까 싶습니다.

답변: 2015년 1월 28일 작성자 queryeditor (5,040 포인트)