예를 들어 1251이 utf-8로 바뀝니다. Iconv를 사용하여 가능한 형식을 UTF-8로 변환하는 방법은 무엇입니까?
$utf8 = iconv('windows-1251', 'utf-8', $ansi);
하지만 어떻게 알 수없는 설정하는 (그것이 우리에 올 때 우리가 모르는 아직 그것이 무엇인지 형식) UTF-8 (가능성의 iconv로 알려진) 형식 (일반적으로 어떤에서)? (코드 샘플)
예를 들어 1251이 utf-8로 바뀝니다. Iconv를 사용하여 가능한 형식을 UTF-8로 변환하는 방법은 무엇입니까?
$utf8 = iconv('windows-1251', 'utf-8', $ansi);
하지만 어떻게 알 수없는 설정하는 (그것이 우리에 올 때 우리가 모르는 아직 그것이 무엇인지 형식) UTF-8 (가능성의 iconv로 알려진) 형식 (일반적으로 어떤에서)? (코드 샘플)
알 수없는 문자 집합에서 번역 할 수 없습니다. 수행 할 수있는 최선의 방법은 실제 charset을 추측하여 첫 번째 매개 변수로 사용하는 것입니다.이 경우 mb_detect_encoding()
을 사용할 수 있습니다.
을 달성하는 방법에 대한 몇 가지 코드 예제를 제공해 주실 수 있습니까? 그걸 할거야? – Rella
mb_detect_encoding은 UTF-8 및 UTF-7, ASCII 및 일련의 일본어 문자 집합으로 제한됩니다. 그것은 일반적인 경우에는 작동하지 않을 것이고, 싱글 바이트 문자 세트에 대해 이것을 수행 할 방법이 없기 때문에 불가능합니다. 이것은 상황 분석의 미친 양을 필요로하며, 구현하기가 불가능합니다. 임의의 문자 집합을 지원해야하는 경우 정보가 제공되도록 요구해야합니다. 입력이 제공되지 않고 UTF-8이 아닌 경우 단일, 합리적인 대체를 정의해야합니다. –
mb_detect_encoding()은 단지 야생 추측을합니다. UTF-8과 같은 좋은 패턴의 인코딩에서만 작동합니다. ANSI와 Latin-1의 차이점을 알 수 없습니다. –
문자열의 값으로 배열을 작성했습니다. 이 작업을 수행하면됩니다.
$string = str_replace("“","",$string);
$string = str_replace("â€Â","",$string);
그리고 그들은 사라졌습니다!
-1 아니요, 이것은 UTF8 로의 진정한 변환이 아닙니다. – hexafraction
http://www.php.net/manual/en/function.utf8-encode.php#97533의 의견에 게시 된 여러 가지 방법이 있습니다. – Mark