php教程|php手册
domdocument,php中文乱码
php教程-php手册
php中DOMDocument对于xml操作我们只要是英文是没有问题了,但如果是中文字体就会有乱码问题了,下面我们就此问题给各位介绍一些解决办法吧.
支付类的源码,ubuntu系统怎么复制,服务器运行不了tomcat,爬虫脚本做题,安卓定时执行php脚本,网络赚钱seolzw
PHP的DOM内部是utf8机制的,在loadHTML时,是通过检查字符中meta的charset来设置编码的,如果没有charset,就当iso8859进行处理了,而这种情况下进行saveXML时,输出来的却是utf8,所以就看到乱码了.
群资料源码,ubuntu怎么安装应用,pytho获取网页爬虫,php提取百度下拉框内容,seo思维图lzw
这么说是不是还不太理解,举个例子:
京东接口源码,ubuntu进bios热键,关于爬虫的python,php招工,seo157.lzw
$xml = new DOMDocument(); @$xml->loadHTML(
我就是测试看看 -
); $dom = new DOMXPath($xml); echo $dom->query(//div)->item(0)->saveXML();
打开网页执行,你会发现输出乱码了,那如何解决这个问题呢?有两种方式.
第一种:在loadHTML的时候指定编码,下面这段代码引用自官方文档中的回复,代码如下:
$doc = new DOMDocument(); $doc->loadHTML(\ . $html); // dirty fix foreach ($doc->childNodes as $item)if ($item->nodeType == XML_PI_NODE) $doc->removeChild($item); // remove hack $doc->encoding = UTF-8; // insert proper
第二种方法:通过iconv对输出的字符重新转换,代码如下:
echo iconv("UTF-8", "GB18030//TRANSLIT", $dom->saveXML($n) );
永久地址:
转载随意~请带上教学地址吧^^