>  기사  >  백엔드 개발  >  对数组进行分组

对数组进行分组

WBOY
WBOY원래의
2016-06-23 13:56:211187검색

我现在想实现这么个功能,
Array ( [tag] => id[type] => complete [level] => 4 [value] => 01 )
Array ( [tag] => name[type] => complete [level] => 4 [value] => 小张 )
Array ( [tag] => flag[type] => complete [level] => 4 )
Array ( [tag] => id [type] => complete [level] => 4 [value] => 02 )
Array ( [tag] => name [type] => complete [level] => 4 [value] => 小李 )
Array ( [tag] => flag [type] => complete [level] => 4 )
Array ( [tag] => id [type] => complete [level] => 4 [value] => 03 )
Array ( [tag] => name [type] => complete [level] => 4 [value] => 小刘 )
Array ( [tag] => flag [type] => complete [level] => 4 ) 

这几个数组是我通过解析xml文件得到打印出来的,他们每三个数组是一组,我需要把id, name, flag写入数据库,以上这种情况就是写三条数据进数据库。但是我取得的xml文件不固定,内容也不固定,所以每次不一定就是三个一组,我想做个通用的方法,把数组分类,然后循环存入数据库有什么好办法吗?各位大神?


回复讨论(解决方案)

$a = array(  Array ( 'tag' => 'id',   'type' => 'complete', 'level' => 4, 'value' => '01' ),  Array ( 'tag' => 'name', 'type' => 'complete', 'level' => 4, 'value' => '小张' ),  Array ( 'tag' => 'flag', 'type' => 'complete', 'level' => 4, ),  Array ( 'tag' => 'id',   'type' => 'complete', 'level' => 4, 'value' => '02' ),  Array ( 'tag' => 'name', 'type' => 'complete', 'level' => 4, 'value' => '小李' ),  Array ( 'tag' => 'flag', 'type' => 'complete', 'level' => 4, ),  Array ( 'tag' => 'id',   'type' => 'complete', 'level' => 4, 'value' => '03' ),  Array ( 'tag' => 'name', 'type' => 'complete', 'level' => 4, 'value' => '小刘' ),  Array ( 'tag' => 'flag', 'type' => 'complete', 'level' => 4, ),);$st = array();foreach($a as $t) {  if(isset($st[$t['tag']])) {    //完成你需要的操作    $st = array();  }  $st[$t['tag']] = $t;}
应该看得懂吧

我试了一下楼上的做法,稍微有点问题,我换了个方法,暂时解决了,不过也给你分吧,谁让你是唯一一个回答我问题的捏~~~

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.