file_get_html返回奇怪的符号

时间:2013-05-17 06:39:00

标签: php web-scraping

$html = file_get_html("http://www.vegasinsider.com/mlb/odds/las-vegas/?s=316");

echo $html; 

$ html作为一堆奇怪的符号返回,包括vۺ (

我虽然使用:

header('Content-Type: text/html; charset=utf-8');

会有所帮助,但事实并非如此。有什么建议吗?

3 个答案:

答案 0 :(得分:0)

试试这个:

$url = 'http://www.vegasinsider.com/mlb/odds/las-vegas/?s=316';
$html = str_get_html(utf8_encode(file_get_contents($url)));

echo $html;

答案 1 :(得分:0)

试试这个

$encoded = htmlentities(utf8_encode(file_get_html('yoururl')));
echo $encoded;

它会将特殊字符转换为HTML实体。请参阅文档here

答案 2 :(得分:0)

file_get_contents有时会变得棘手。更改simple_html_dom.php中的代码以改为使用gzopen。在file_get_html()

//$contents = file_get_contents($url, $use_include_path, $context, $offset);

//get the contents of the page
$fp = gzopen($url,'r');

$contents = '';

while($html = gzread($fp , 256000))
{
    $contents .= $html;
}

gzclose($fp);