如何在PHP中交替使用foreach语句
在第一个foreach语句的一个结果被回显后,第二个foreach语句的一个结果将被回显的意义上,我如何交替这些foreach语句?下面是两个foreach语句如何在PHP中交替使用foreach语句,php,foreach,Php,Foreach,在第一个foreach语句的一个结果被回显后,第二个foreach语句的一个结果将被回显的意义上,我如何交替这些foreach语句?下面是两个foreach语句 foreach($anchors as $a) { $text = $a->nodeValue; $href = $a->getAttribute('href'); $i++; if ($i > 16) { if (strpos($text, "by owner") === false) {
foreach($anchors as $a) {
$text = $a->nodeValue;
$href = $a->getAttribute('href');
$i++;
if ($i > 16) {
if (strpos($text, "by owner") === false) {
if (strpos($text, "map") === false) {
echo "<a href =' ".$href." '>".$text."</a><br/>";
}
}
}
}
foreach($span as $s) {
echo "<br>".$s->nodeValue."<br>" ;
}
foreach($a锚定){
$text=$a->nodeValue;
$href=$a->getAttribute('href');
$i++;
如果($i>16){
if(strpos($text,“按所有者”)==false){
if(strpos($text,“map”)==false){
回声“
”;
}
}
}
}
foreach(跨度为$s){
回显“
”$s->nodeValue。“
”;
}
从字面上看,您不能“合并”两个foreach语句,但可以使用每个()函数作为解决方法。将其放置在第一个循环中的某个位置:
list(,$s) = each($span);
echo "<br>".$s->nodeValue."<br>" ;
列表(,$s)=每个($span);
回显“
”$s->nodeValue。“
”;
不确定您要问什么,但您可能想尝试使用继续
,一旦满足条件,它将在下一项重新启动foreach。如果PHP有一个数组zip函数,并且能够在foreach
中使用list
,那么在这里就更好了。(例如,foreach(array_-zip($anchors,$span)as-list($a,$s))
)不幸的是,它没有。