多循环问题只有一个结果为真

问题描述

我在循环和条件方面遇到问题。我正在尝试检查Google自定义搜索API的结果中的链接是否可用。但只会得到最后的结果为真。不知道为什么。

       foreach($array as $qqq => $kkk ){
            $found = "No";
            $kkk_en = urlencode($kkk);
            $page_rank = "" ;
            for ($page = 1;$page <= $pages && $found == "No";$page++){
                $apiurl = sprintf('https://www.googleapis.com/customsearch/v1?q=%s&cx=%s&key=%s&hl=%s&gl=%s&start=%d',$kkk_en,$GOOGLE_CSE_CX,$GOOGLE_API_KEY,$hl,$gl,($page-1)*10+1);
                $json = file_get_contents($apiurl);
                $obj = json_decode($json);
                foreach ($obj->items as $idx=>$item) {
                    if (strpos($item->link,$domain) ){
                        $found = "Yes";
                        $page_rank = ($idx + ($page-1)*10);
                    }
                }
            }
            if ($found == "No"){
                $toolResult .= "<tr>
                <td>".$kkk."</td>
                <td>".$domain."</td>
                <td>Not in top 100</td>
                <td>".$hl." / ".$gl."</td></tr>";
            }
            else{
                $toolResult .= "<tr>
                <td>".$kkk."</td>
                <td>".$domain."</td>
                <td>".$page_rank."</td>
                <td>".$hl." / ".$gl."</td></tr>";
            }
        }

解决方法

通过在循环外设置全局变量来计算它..

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...