首页 > 解决方案 > 在单个 forEach 循环中使用两个数组表达式

问题描述

如果我使用具有两个值的两个数组表达式,我不会收到错误,但我也绝对没有输出:

不工作

<?php foreach ($zones as $zone) {
    $body = $zone->get_body();
    $domain_name = $zone->get_domain_name();
    $name = $zone->get_name();

    foreach ($domains as $domain) {
        $status = $domain->get_status();

        if (strstr($body, $ip)) {
            echo "<tr>";
            echo "<td>" . $domain_name . "</td>";
            echo "<td>" . $status . "</td>";
            echo "<td>" . $body . "</td>";
            echo "</tr>";
            $count++;
        }
    }
}

所以我需要能够定位 $status 变量,它也使用 $domain 而不是 $zones

当我仅将以下代码用于区域时,一切正常,并且我得到了输出的数据。

工作

<?php foreach ($zones as $zone) {
        $body = $zone->get_body();
        $domain_name = $zone->get_domain_name();
        $name = $zone->get_name();

        if (strstr($body, $ip)) {
            echo "<tr>";
            echo "<td>" . $domain_name . "</td>";
            echo "<td>" . $name . "</td>";
            echo "<td>" . $body . "</td>";
            echo "</tr>";
            $count++;
        }
}

标签: php

解决方案


推荐阅读