2013-01-07 5 views
4

인코딩 문제가 발생하면 mongoDB insert의 새 데이터 세트가 걱정 스럽습니다.PHP MongoDB-> insert - utf8로 치명적인 오류가 발생했습니다

 PHP Fatal error: Uncaught exception 'MongoException' with message 'non-utf8 string: ü' 

PHP 드라이버가 중단되기 전에 새 데이터 세트를 수정하는 방법은 무엇입니까?

이미 utf8 인 utf8_encode 문자열 데이터보다 더 좋은 아이디어가 있습니까?

답변

4

같은 문제가있었습니다. 이 작품 :

$string = mb_convert_encoding($string, 'ISO-8859-1', 'UTF-8'); 
2

utf8_encode() (http://php.net/manual/en/function.utf8-encode.php) 기본 PHP 인코딩은 아직 utf8이 아니기 때문에 (PHP 5.4는 확실하지 않습니다.)

+0

UTF-8 실 거예요 PHP 6 (즉이 해제됩니다 때마다) – datasage

+0

'utf8_encode()까지 기본 인코딩 될'거의 아무것도 대답하지 않습니다, 그것은 단지 ISO-8859-에 입력에 대응할 수 1. 'iconv()'또는'mb_convert_encoding()'을 사용하고 입력 데이터 인코딩을 명시 적으로 지정하십시오. – DaveRandom

+0

@DaveRandom 죄송합니다. 지금 말한 것을 깨달았습니다. – Sammaye

관련 문제