我有两个foreach
循环。一个提供image href="URL"s
,另一个提供image src="URL"s
。
如何将这两个循环组合在一起并显示图像?
我的代码提供图像HREF:
foreach($doc->getElementsByTagName('a') as $a){
foreach($a->getElementsByTagName('img') as $img){
echo $a->getAttribute('href');
}
}
我的代码提供了图像SRC:
foreach($html->find('img') as $e)
echo $e->src . '<br>';
答案 0 :(得分:1)
尝试以下操作。
foreach($doc->getElementsByTagName('a') as $a){
echo $a->getAttribute('href');
foreach($a->getElementsByTagName('img') as $img){
echo $img->src . '<br>';
}
}
您的代码为每张图片回显a->href
。如果这是您想要做的,那么请尝试以下方法。
foreach($doc->getElementsByTagName('a') as $a){
foreach($a->getElementsByTagName('img') as $img){
echo $a->getAttribute('href');
echo $img->src . '<br>';
}
}
答案 1 :(得分:1)
我会考虑如何在一个循环中完成所有操作,但在此之前,这里是如何将它们全部放入一个数组中:
$image_links = array();
foreach($doc->getElementsByTagName('a') as $a){
foreach($a->getElementsByTagName('img') as $img){
$image_links[] = $a->getAttribute('href');
}
}
foreach($html->find('img') as $e)
$image_links[] = $e->src;
}