解决:var_dump显示该问题属于&和& .
此外,我仍然想知道为什么curl获取了一个缺少div的页面。有人会善意解释吗?
现在已经解决了这个问题1.5小时。缩小到对我来说没有意义的事情。请帮忙 。我正在使用curl获取页面。 问题是,当使用以下代码时: 从导航到左侧的很多div标签从提取的页面中丢失,
$pageToParse = "http://www.themarketgrocer.com.au{$arrayLeftBar[$i]} " ;
;
//fetch target page
$curlFetched = http_get($pageToParse, "http://www.google.com") ; //fetched using a curl function
echo $curlFetched['FILE'];
使用simplehtmldom从html页面获取$ arrayLeftBar [$ i]的值。如同回应:
"/index.php?option=com_content&view=category&layout=blog&id=37&Itemid=92"
但是如果
$pageToParse = "http://www.themarketgrocer.com.au{$arrayLeftBar[$i]} " ;
更改为:(基本上手动附加$ arrayLeftBar [$ i]的值)
$pageToParse = "http://www.themarketgrocer.com.au/index.php?option=com_content&view=category&layout=blog&id=37&Itemid=92" ;
然后获取完整页面。
为什么?我已经回应了价值观,他们是完全相同的。我错过了什么愚蠢的小事?
编辑: 这就是$ arrayLeftBar的填充方式:我很确定问题出在这里。因为我手动创建一个简单的数组。事情很有效。
foreach ($sublevelLinks as $link)
{
$arrayLeftBar[] = $link->href ;
}
答案 0 :(得分:0)
在$arrayLeftBar[$i]
值上使用urldecode
$query = urldecode($arrayLeftBar[$i]);
$pageToParse = "http://www.themarketgrocer.com.au{$query}" ;
答案 1 :(得分:0)
解决:var_dump显示该问题属于&和& 。 html_entity_decode($ arrayLeftBar [$ i])进行了必要的转换