Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在foreach循环-php-xml中为相同的属性值设置条件_Php_Loops_Xml Parsing - Fatal编程技术网

如何在foreach循环-php-xml中为相同的属性值设置条件

如何在foreach循环-php-xml中为相同的属性值设置条件,php,loops,xml-parsing,Php,Loops,Xml Parsing,我从xml提要获取数据,然后使用foreach循环在mysql中插入数据 但xml提要包含多个具有相同属性的项,如下所示 但我想要的是 添加具有相同值的属性的子项 如xml所示,属性tag1111有3种类型的值 如果我在foreach循环中添加了一些内容,那么每个循环都会替换它 我该怎么做?在您的评论之后,我已经更新了我的答案。请现在检查。问题只是两个方括号。现在试试看,我很想知道发生了什么事。到底是怎么回事?你想要什么? <?php $requestUrl = "url"; $data

我从xml提要获取数据,然后使用foreach循环在mysql中插入数据

但xml提要包含多个具有相同属性的项,如下所示

但我想要的是

添加具有相同值的属性的子项

如xml所示,属性tag1111有3种类型的值

如果我在foreach循环中添加了一些内容,那么每个循环都会替换它


我该怎么做?

在您的评论之后,我已经更新了我的答案。请现在检查。问题只是两个方括号。现在试试看,我很想知道发生了什么事。到底是怎么回事?你想要什么?
<?php
$requestUrl = "url";
$data = simplexml_load_file($requestUrl);
$i=0;
foreach($data->item as $subitem) {
    if(!in_array($data->item[$i]['promocode'], $arr_promocode))
        $arr_promocode[] = $data->item[$i]['promocode'];
    else{
        $key = array_search($data->item[$i]['promocode'], $arr_promocode);
        $data->item[$key]['clicks'] = $data->item[$key]['clicks'] + $subitem->clicks;
    }
    $arr_program[] = $data->item[$i]['program'];
    $arr_program_name[] = $data->item[$i]['program_name'];
    $clicks = $subitem->clicks;
    $total = $subitem->total;
    $i++;
}