UTF8 테이블의 latin1 문자를 UTF8로 변환
PHP 스크립트에 mysql_set_charset('utf8')을 삽입하지 못한 것을 발견했습니다. , 이제 모든 테이블이 utf8_unicode_ci 조합이므로 발음 구별 부호가 있는 문자 삽입이 제대로 작동하지 않습니다.
이전에는 발음 구별 부호가 있는 항목을 삽입하려고 할 때마다 불일치로 인해 데이터가 잘못 표시되었습니다. 문자 집합에서. 그러나 PHP와 MySQL 사이의 문자 세트를 수정한 후 이제 새로운 삽입이 올바르게 저장됩니다.
다음 단계는 여전히 엉망인 이전 행을 모두 수정하는 것입니다. mb_convert_encoding 및 iconv를 사용해 보았으나 특정 문자 뒤에서 문자열이 잘립니다.
데이터를 복구하려면 다음과 같은 MySQL 함수를 사용할 수 있습니다.
convert(cast(convert(name using latin1) as binary) using utf8)
방법에 따라 인코딩 변환 중에 데이터가 변경된 경우 내부 변환을 생략해야 할 수도 있습니다. 이 기능은 데이터를 Latin-1에서 바이너리로 변환한 다음 UTF-8로 변환하여 모든 문자가 올바르게 표시되도록 합니다.
위 내용은 UTF8 테이블의 Latin1 문자를 UTF8로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!