我使用简单的dom parrser http://simplehtmldom.sourceforge.net/manual.htm
我说像这样的表
<table class="tb">...</table>
<table class="tb">...</table>
<table class="tb">...</table>
<table class="tb">...</table>
<table class="tb">...</table>
我做
$ads = "<div>ads banner here</div>";
foreach($html->find('div[class="tb"]') as $element){
echo $element->src . '<br>';
$element->outertext .= $ads;
}
然后广告横幅将遍历所有表格,我将获得5个广告块...如何限制数字?就像我只想在第一张和第二张桌子上出现一个广告块。
答案 0 :(得分:0)
foreach($html->find('div[class="tb"]') as $i => $element){
假设数组使用索引键$i
是你的迭代索引,从零开始,那么限制数量会在你有足够的时候打破循环
foreach($html->find('div[class="tb"]') as $i => $element){
if ($i > 0) break; // show only the first
// if ($i > 4) break; // show the first 5
echo $element->src . '<br>';
$element->outertext .= $ads;
}
如果您使用的是关联数组,则需要计算。
$i = 0;
foreach($html->find('div[class="tb"]') as $element){
$i++;
if ($i > 1) break; // show only the first
// if ($i > 5) break; // show the first five
echo $element->src . '<br>';
$element->outertext .= $ads;
}