我正致力于从网页中提取标题标记的内容。问题是某些内容需要UTF8解码才能正确显示,而其他内容则需要两次!这方面的例子是(http://nestekaltimontie.com/)&的标题。 (http://www.pizzaexpresscafe.fi/)的标题第一个需要两次解码,第一个需要一次解码。 我的问题是我怎么知道我需要多少次应用UTF8解码才能正确显示文本。或者有没有正确的方法来正确显示两个网站的标题文本?。我已经尝试了堆栈流中提到的一些方法用于解码和编码,如Encoding :: toutf8(),mb_internal_encoding(" UTF-8&# 34;),iconv,utf8_encode但不适用于我的示例。我提取标题的代码如下:
mb_internal_encoding("UTF-8");
require_once("simple_html_dom.php");
function gettitle($link)
{
$html = file_get_html($link);
$dom = new DOMDocument;
$dom->loadHTML($html);
var_dump($dom);
$xpath = new DOMXPath($dom);
$entries = $xpath->query('//html/head/title');
foreach ($entries as $entry) {
$title = $entry->nodeValue;
}
echo utf8_decode($title);