질문 Q #8604
xss_clean의 euc-kr 오류
마냐 2009-10-17 16:45:31

xss_clean 에서

$str = preg_replace_callback("/<\w+.*?(?=>|<|$)/si", array($this, '_html_entity_decode_callback'), $str);
....
function _html_entity_decode($str, $charset='UTF-8') {
  if (stristr($str, '&') === FALSE) return $str;
....

위 정규식에 포함되는 문자열 중에 & 가 들어가 있으면 html_entity_decode 함수를 실행하게 됩니다.

그런데 html_entity_decode 함수는 euc-kr 을 지원하지 않습니다.

A PHP Error was encountered

Severity: Warning

Message: html_entity_decode() [function.html-entity-decode]: charset `EUC-KR' not supported, assuming iso-8859-1

Filename: libraries/Input.php

Line Number: 1017

글 작성시마다 위 와 같은 오류를 출력합니다.
당연히 UTF-8 이면 이상이 없습니다.

해결책은 UTF-8 을 쓰거나 xss_clean을 사용 안하는 거겠죠?
답변 1
#1 ci세상 2009-10-17 22:14:23
euc-kr 옵션이 없어서 서럽군요;; config.php의 charset 를 EUC-JP로 한번 해보세요.. 일본문자가 2바이트라서 될것 같습니다.