二次元配列を一次元配列に変換する2つの方法


どうやって下の二次元配列を一次元配列に変えるのですか?

$msg = array(
  array(
    'id'=>'45',
    'name'=>'jack'
  ),
  array(
    'id'=>'34',
    'name'=>'mary'
  ),
  array(
    'id'=>'78',
    'name'=>'lili'
  ),
);
第一の方法:

foreach($msg as $k => $v){
    $ids[] = $id;
    $names[] = $name;
  }
第二の方法:

$ids = array_column($msg, 'id');
 $names = array_column($msg, 'name');
以上の二つの解法print_r($names)後の結果は:

Array(
  [0]=>jack
  [1]=>mary
  [2]=>lili
)
注意:array_column()$n=array_のような3番目のパラメータがあります。column($msg、'name'、'id')
printr($n)の結果は、

Array(
  [45]=>jack
  [34]=>mary
  [78]=>lili
)