PHP简单的HTML DOM解析器 - 无法在php循环中读取url内容

时间:2015-04-02 17:12:35

标签: php loops

我正在尝试从以下页面中找到特定元素:

$links=array(
"https://www.computers.com/l_bg/?m=7&i=587609", 
"https://www.computers.com/l_bg/?m=7&i=587610", 
"https://www.computers.com/l_bg/?m=7&i=587607", 
"https://www.computers.com/l_bg/?m=7&i=587502"
); 


foreach($links as $link){
$newhtml = new simple_html_dom();
$newhtml->load_file($link);

foreach($newhtml->find('table.fpt > td.name') as $price){
echo $price=$price->innertext;
    }
}

但$ price是空的。奇怪的是,如果我将代码更改为:

$newhtml = new simple_html_dom();

$newhtml->load_file('https://www.computers.com/l_bg/?m=7&i=587609');
foreach($newhtml->find('table.fpt > td.name') as $price){
echo $price=$price->innertext;
}

代码可以工作..为什么我手动把它的网址设置好,但是当它处于循环状态时它不会? 你能告诉我有什么问题以及如何找到它吗?

1 个答案:

答案 0 :(得分:1)

问题似乎是编码问题。如果网址有&它被转换为&,必须用&为了工作..无论如何,谢谢你的帮助!