php二维数组的取值与转换

1 while(list($key,$value) = each($arr))
2 {
3  while(list($k,$v) = each($value))
4  {
5   echo $key."==>".$k."===>".$v."<br>";
6  }
7 }
 1 $msg = array(
 2   array(
 3     'id'=>'45s',
 4     'name'=>'jacks'
 5   ),
 6   array(
 7     'id'=>'3s4',
 8     'name'=>'masry'
 9   ),
10   array(
11     'id'=>'7s8',
12     'name'=>'lili'
13   ),
14 );
15 一般实现方法:
16 1解:foreach($msg as $k => $v){
17     $ids[] = $id;
18     $names[] = $name;
19   }
20 2解:$ids = array_column($msg, 'id');
21     $names = array_column($msg, 'name');
22 以上两种解法print_r($names);后的结果为:
23 Array(
24   [0]=>jack
25   [1]=>mary
26   [2]=>lili
27 )
28 3
29 快速实现方法:
30 注意:array_column();可以有第三个参数,如 $n = array_column($msg, 'name', 'id');
31 print_r($n);的结果为:
32 Array(
33   [45]=>jacks
34   [34]=>masry
35   [78]=>lili
36 )
 1 public  function arrayChange($a){
 2                 static $arr2;
 3                     foreach($a as $v)
 4                     {
 5                         if(is_array($v))
 6                         {
 7                             $this->arrayChange($v);//这里tp加this
 8                         }else{
 9 
10                             $arr2[]=$v;
11                         }
12                     }
13 
14                     return $arr2;
15 
16                 }
原文地址:https://www.cnblogs.com/mrcln/p/3925665.html