>백엔드 개발 >PHP 튜토리얼 >对数组进展分组

对数组进展分组

WBOY
WBOY원래의
2016-06-13 11:58:07980검색

对数组进行分组
我现在想实现这么个功能,
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文件不固定,内容也不固定,所以每次不一定就是三个一组,我想做个通用的方法,把数组分类,然后循环存入数据库有什么好办法吗?各位大神?
------解决方案--------------------

本帖最后由 xuzuning 于 2014-05-26 17:21:24 编辑
$a = array(<br />  Array ( 'tag' => 'id',   'type' => 'complete', 'level' => 4, 'value' => '01' ),<br />  Array ( 'tag' => 'name', 'type' => 'complete', 'level' => 4, 'value' => '小张' ),<br />  Array ( 'tag' => 'flag', 'type' => 'complete', 'level' => 4, ),<br />  Array ( 'tag' => 'id',   'type' => 'complete', 'level' => 4, 'value' => '02' ),<br />  Array ( 'tag' => 'name', 'type' => 'complete', 'level' => 4, 'value' => '小李' ),<br />  Array ( 'tag' => 'flag', 'type' => 'complete', 'level' => 4, ),<br />  Array ( 'tag' => 'id',   'type' => 'complete', 'level' => 4, 'value' => '03' ),<br />  Array ( 'tag' => 'name', 'type' => 'complete', 'level' => 4, 'value' => '小刘' ),<br />  Array ( 'tag' => 'flag', 'type' => 'complete', 'level' => 4, ),<br />);<br /><br />$st = array();<br />foreach($a as $t) {<br />  if(isset($st[$t['tag']])) {<br />    //完成你需要的操作<br />    $st = array();<br />  }<br />  $st[$t['tag']] = $t;<br />}<br />
应该看得懂吧
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.