> 백엔드 개발 > PHP 튜토리얼 > php如何去除字符串中由于字节丢失造成的乱码字符

php如何去除字符串中由于字节丢失造成的乱码字符

WBOY
풀어 주다: 2016-06-06 20:38:04
원래의
2259명이 탐색했습니다.

比如字符串 "怎么搭配�1212�宿在游戏中" 出现了乱码字符,猜测是字节丢失造成的。这样的字符串构建的xml拿去解析就会XML parse error: not well-formed (invalid token),要如何写段程序过滤掉字符串中的这些的字符?

回复内容:

比如字符串 "怎么搭配�1212�宿在游戏中" 出现了乱码字符,猜测是字节丢失造成的。这样的字符串构建的xml拿去解析就会XML parse error: not well-formed (invalid token),要如何写段程序过滤掉字符串中的这些的字符?

不是字节丢失,是编码不一致

出错之后前后字符还能正常,猜测是 UTF-8。那样的话,把不符合 UTF-8 编码的字节删去就行了。具体看 UTF-8 的编码试试。

我不懂 PHP。在 Python 里的话,直接指定编码/解码时出错时如何处理就行了,比如 errors='ignore' 就可以忽略掉乱七八糟的部分。

http://php.net/manual/en/function.iconv.php

If you append the string //IGNORE, characters that cannot be represented in the target charset are silently discarded.

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿