반응형
cURL을 이용하여 데이터를 가져오는데, 아무리 해도 인코딩 문제 해결이 쉽지 않더군요.
¼¿iÆ?º°½A ¼AE±¸ ¾cAcμ¿ 변환 후 DB에 저장해도 이렇게 보이는..
iconv가지고 삽질하다가 mb_convert_encoding을 써봐도 해결이 쉽게 되지 않더군요.
몇 번의 삽질 끝에 다음과 같이 해결했습니다.
<환경>
PHP 스크립트의 인코딩 : UTF-8
MySQL 인코딩 : UTF-8
cURL 요청 헤더 : EUC-KR
cURL 응답 : EUC-KR
보통 위의 환경에서 문제가 가장 많이 발생하는데, 아래의 코드로 해결하시면 됩니다.
<코드>
$res = sendCurlPostRequest($url,$fields,$referer,"euc-kr");
$enc = mb_detect_encoding($res); // 해당 문자열의 인코딩 타입을 알아냅니다.
$res = mb_convert_encoding($res, "UTF-8","EUC-KR");
반응형
'웹개발 > PHP' 카테고리의 다른 글
AWS S3 사용시 중국의 Great Firewall에 의한 이미지 차단 우회하기 (0) | 2017.05.29 |
---|---|
[해결방법 총정리] Warning: URL file-access is disabled in the server configuration in (2483) | 2014.09.23 |
PHP Fatal error: Class 'DOMDocument' not found 조치 방법 (0) | 2013.12.16 |
PHP Notice: Undefined index: 해결 방법 (0) | 2013.12.16 |
웹페이지 PDF 생성. 삽질은 이제 그만! (0) | 2010.11.29 |
제로보드XE설치시 FTP부분에서 무시 해도 넘어가지않을경우 대처방법 (1) | 2009.02.18 |
php에서 상대경로 처리하는 팁 (186) | 2008.07.22 |
PHP 보안 팁 (1) | 2006.09.24 |
초급용 php : 게시판의 꽃 페이징을 아십니까? (0) | 2006.09.23 |
초급용 PHP : 함수와 클래스 생성 방법론 ( 함수편 ) (0) | 2006.09.23 |