除了像äöü这样的德国Umlaute,一切都很好。我的网站使用utf-8编码,因此所有这些Umlaute应该正常工作(并且它们在页面的其余部分进行)。即使我将天气小部件正常放置在我的网站上,小部件也可以与那些Umlaute一起使用。
然而,只要我使用curl获取表格中的值,Umlaute就不起作用并转换成奇怪的字符。
<?php
$url = 'http://www.weatherxyz.com/hptool/wordpress_v1.php?cid=43Xv1a0&l=de';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HEADER, false);
$str = curl_exec($curl);
$dom = new DOMDocument;
$dom->loadHTML($str);
$xpath = new DOMXPath($dom);
$tds = $xpath->query('//div/table/tr/td');
foreach ($tds as $key => $cell) {
echo $cell->textContent;
}
?>
你们有什么想法我能做到这一点吗?
答案 0 :(得分:1)
Looks like you're not alone抱怨DOMDocument
不理解不同的编码。特定海报包括SmartDOMDocument以撤消其实施不当的一些内容。
答案 1 :(得分:0)
检查页面编码,并相应地重新编码为utf8