有点类似合并数组的问题,一直想不到一个办法,希望各位帮帮忙。
给出需要例子解释:原始数组:
$a = array( [0]=> array( [0]=> array ( [0] => array( 'd'=> array('0a1','0a2','0a3'), 'm'=>array('A1') )
[1] => array( 'd'=> array('0b1','0b2','0b3'), 'm'=>array('B1') )
[3] =>.........
[4]=>.......
...
[n]........
)
[1]=> array ( [0] => array( 'd'=> array('0a1','0a2','0a3'), 'm'=>array('A2') )
[1] => array( 'd'=> array('0b1','0b2','0b3'), 'm'=>array('B2') )
[3] =>.........
[4]=>.......
...
[n]........和以上类似
)
[2]=>....
[3]=>....
...
[m]....和以上类似
) [1]=> array( [0]=> array ( [0] => array( 'd'=> array('1a1','1a2','1a3'), 'm'=>array('A11') )
[1] => array( 'd'=> array('1b1','1b2','1b3'), 'm'=>array('B11') )
[3] =>.........
[4]=>.......
...
[n]........和以上类似
)
[1]=> array ( [0] => array( 'd'=> array('1a1','1a2','1a3'), 'm'=>array('A22') )
[1] => array( 'd'=> array('1b1','1b2','1b3'), 'm'=>array('B22') )
[3] =>.........
[4]=>.......
...
[n]........和以上类似
)
[2]=>....
[3]=>....
...
[m]...和以上类似
)
[3].....
[4]....
...
[P]...和以上类似 )现在要将上述数组中最后一维 具有相同array('d')的值的那个数组中的array('m')加到一起,并将数组减少2维
结果如下:
$a = array( [0] => array( 'd'=> array('0a1','0a2','0a3'), 'm'=>array('A1',A2.........) )
[1] => array( 'd'=> array('0b1','0b2','0b3'), 'm'=>array('B1',B2.........) )
[3] =>.........
[4]=>.......
...
[n]........
[n+1] => array( 'd'=> array('1a1','1a2','1a3'), 'm'=>array('A1',A2.........) )
[n+2] => array( 'd'=> array('1b1','1b2','1b3'), 'm'=>array('B1',B2.........) )
[n+3] =>.........
[n+4]=>.......
...
[n+n]........
)
写的可能有点乱了。。希望各位能看懂吧。
我把最原始的数组搞的那么复杂,纯粹是为了方便合并。
给出需要例子解释:原始数组:
$a = array( [0]=> array( [0]=> array ( [0] => array( 'd'=> array('0a1','0a2','0a3'), 'm'=>array('A1') )
[1] => array( 'd'=> array('0b1','0b2','0b3'), 'm'=>array('B1') )
[3] =>.........
[4]=>.......
...
[n]........
)
[1]=> array ( [0] => array( 'd'=> array('0a1','0a2','0a3'), 'm'=>array('A2') )
[1] => array( 'd'=> array('0b1','0b2','0b3'), 'm'=>array('B2') )
[3] =>.........
[4]=>.......
...
[n]........和以上类似
)
[2]=>....
[3]=>....
...
[m]....和以上类似
) [1]=> array( [0]=> array ( [0] => array( 'd'=> array('1a1','1a2','1a3'), 'm'=>array('A11') )
[1] => array( 'd'=> array('1b1','1b2','1b3'), 'm'=>array('B11') )
[3] =>.........
[4]=>.......
...
[n]........和以上类似
)
[1]=> array ( [0] => array( 'd'=> array('1a1','1a2','1a3'), 'm'=>array('A22') )
[1] => array( 'd'=> array('1b1','1b2','1b3'), 'm'=>array('B22') )
[3] =>.........
[4]=>.......
...
[n]........和以上类似
)
[2]=>....
[3]=>....
...
[m]...和以上类似
)
[3].....
[4]....
...
[P]...和以上类似 )现在要将上述数组中最后一维 具有相同array('d')的值的那个数组中的array('m')加到一起,并将数组减少2维
结果如下:
$a = array( [0] => array( 'd'=> array('0a1','0a2','0a3'), 'm'=>array('A1',A2.........) )
[1] => array( 'd'=> array('0b1','0b2','0b3'), 'm'=>array('B1',B2.........) )
[3] =>.........
[4]=>.......
...
[n]........
[n+1] => array( 'd'=> array('1a1','1a2','1a3'), 'm'=>array('A1',A2.........) )
[n+2] => array( 'd'=> array('1b1','1b2','1b3'), 'm'=>array('B1',B2.........) )
[n+3] =>.........
[n+4]=>.......
...
[n+n]........
)
写的可能有点乱了。。希望各位能看懂吧。
我把最原始的数组搞的那么复杂,纯粹是为了方便合并。
1、减少维数
foreach($a as $a1) {
foreach($a1 as $a2) {
foreach($a2 as $r) {
$o[] = $r;
}
}
}
得到形如
Array (
[0] => Array ( [d] => Array ( [0] => 0a1 [1] => 0a2 [2] => 0a3 ) [m] => Array ( [0] => A1 ) )
[1] => Array ( [d] => Array ( [0] => 0b1 [1] => 0b2 [2] => 0b3 ) [m] => Array ( [0] => B1 ) )
)
这样的数组2、时间太晚了,明天再说