특수문자 깨짐현상... 조언을 구합니다.
CMS/프레임워크 | Rhymix 1.9 |
---|---|
개발 언어 | PHP 7.0 |
라이믹스 사용중이고, php7.0입니다.
아래 사진처럼 글 수정모드의 제목부분 특수문자가 깨져서 보여집니다. 본문의 특수문자는 깨지지 않구요.
모바일에서 작성된 글은 특수문자가 깨지지 않는걸보면 PC의 게시판 스킨이 문제겠다 싶어 스케치북 스킨을 원본으로 덮어씌워도 봤는데, 증상은 여전하네요...
혹시 해결방법 아시는 분 계신가요? 조언 좀 부탁드립니다.
댓글 6
/common/functions.php 에서 function utf8_mbencode($str) 부분을 아래와 같이 변경하세요.
function utf8_mbencode($str)
{
if (strlen($str) >= 3 && substr($str, 0, 3) === "\xEF\xBB\xBF")
{
$str = substr($str, 3);
}
if (!utf8_check($str))
{
$str = @iconv('UTF-8', 'UTF-8//IGNORE', $str);
}
return $str;
}
기존 라이믹스 코드는 이모지를 html 유니코드로 치환해주는데, 위의 소스로 변경하게 되면 이모지를 그대로 출력하게 됩니다.
DB 테이블 형식이 utf8mb4 아니면 이모지 짤리게 되니 charset 확인 후에 적용해주세요.
질문과 관계없는 무의미한 코어수정 비추입니다.
스케치북 스킨의 write_form.html에서 htmlspecialchars 함수 중복 사용이 문제입니다. 글쓰기 제목 htmlspecialchars 검색해 보세요.
감사합니다. ^^~~