New World
[PHP/DB] 한글이 숫자로 나올 때 본문
php 와 DB를 만지다 보면 생기는 일이다, 아래는 이와 같은 해결법을 제시했던 사이트들이 들어가 있다.
참고로 나는 php 에서 해결되지 않아 안드로이드에서 해결하였다.
유니코드인지 확인해 볼 수 있는 사이트이다. 한글로 내가 출력할 것을 써서 돌려보면 똑같은 형식의 문자열이 나타난다면 유니코드로 의심해볼 수 있다.
coderstoolbox.net/string/#!encoding=xml&action=encode&charset=us_ascii
1. json 인코딩을 JSON_UNESCAPED_UNICODE로 풀어주는 것
흔한 유니코드를 한글로 보여주게 하는 방법이다.
$출력할 변수명 = json_encode($출력할 함수명,JSON_UNESCAPED_UNICODE);
2. 함수 써보기
function raw_json_encode($input) {
return preg_replace_callback(
'/\\\\u([0-9a-zA-Z]{4})/',
function ($matches) {
return mb_convert_encoding(pack('H*',$matches[1]),'UTF-8','UTF-16');
},
json_encode($input)
);
}
$출력할 변수명 = raw_json_encode($인코딩 시킬 함수명);
3. 헤더 파일 (유니코드 숫자)
mysqli_set_charset($conn, "utf8");
php 파일에서 이런 방법으로 해결되지 않는다면 다른 프로그래밍 언어를 통해 설계 해보는 것을 조심스레 추천드려본다.
'Programming > Bug Zero' 카테고리의 다른 글
[JAVA Spring] src, main, webapp, WEB-INF, xml 파일에 x 표시가 뜨는 경우 해결방법 (0) | 2021.04.10 |
---|---|
[파이썬 오류 #4] SyntaxError: invalid syntax (0) | 2020.06.16 |
[PHP + MySQL + phpmyadmin #1] 배열을 찾지 못할 때(배열의 위치를 모를 때) (0) | 2020.06.13 |
[PHP + MySQL + phpmyadmin #1] 연결된 구성원으로부터 응답이 없어 연결하지 못했거나, 호스트로부터 응답이 없어 연결이 끊어졌습니다. (0) | 2020.06.08 |
[CMD #1] -bash: is: command not found (0) | 2020.06.02 |