首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php,foreach in foreach

php,foreach in foreach
EN

Stack Overflow用户
提问于 2013-01-04 15:44:35
回答 1查看 94关注 0票数 0

在这段代码中,有两个foreach。当我单独使用它时,它工作得很好。然而,它不能一起工作。这个问题我已经纠结了两天了。

代码语言:javascript
复制
$urls = nl2br($this->input->post('urls'));
$result = explode("<br />", $urls);

$n = 0;
foreach($result as $row)
{
$n++;   
    $Google_Play_URL = $row;
    $string = file_get_contents($Google_Play_URL);

    $dom = new DOMDocument();
    @$dom->loadHTML($string);
    $anchors = $dom->getElementsByTagName('a');

    $i = 0;
    foreach ($anchors as $anchor) 
    {
    $i++;

        if ($anchor->nodeValue === 'Email Developer') {
            $email = str_replace('mailto:', '', $anchor->getAttribute('href'));

            if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
                echo $email;

                $id = $this->session->userdata(SESSION_USERID); 

                $country = 'US';
                $type = 'android';

                $query = 'SELECT idx FROM db_advertisers WHERE email = "'.$email.'"';
                $result = $this->db->query($query);

                if($result->num_rows() < 1)
                {
                    $query = 'INSERT INTO db_advertisers (email, type, url, country, submit_user) VALUES ("'.$email.'", "'.$type.'", "'.$Google_Play_URL.'", "'.$country.'", "'.$id.'")';
                    $this->db->query($query);   
                }
            }
        }
    }

}

当我发送多个值时,此代码仅保存一个数据。它假定要保存多个数据。你能看到问题所在吗?

EN

回答 1

Stack Overflow用户

发布于 2013-01-04 15:46:50

唯一明显的问题是,在内部foreach循环中,您设置了

代码语言:javascript
复制
$result = $this->db->query($query);

这个变量与外部foreach循环中的变量相同

代码语言:javascript
复制
foreach($result as $row)

更改其中一个变量名称可以解决此问题。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14153145

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档