前面的两篇文章《什么是php一维数组,php一维数组实例详解》和《什么是php二维数组,php二维数组实例详解》详细介绍了一维数组和二维数组,本章我将介绍一维数组与二维数组的相互转换的实现!

话不多说,首先我们先介绍一维数组转换二维数组的示例代码:

<?php
header("Content-Type:text/html; charset=utf-8");
$asr[1] = array("a","b","c","d");
$asr[2] = array("a","b","c","d");
$asr[3] = array("a","b","c","d");
$newarray = array();
foreach($asr as $a)
{
    $newarray[] = $a;
}
print_r($newarray);
?>
登录后复制

输出的结果为:

Array (
[0] => Array (
[0] => a
[1] => b
[2] => c
[3] => d )
[1] => Array (
[0] => a
[1] => b
[2] => c
[3] => d )
[2] => Array (
[0] => a
[1] => b
[2] => c
[3] => d )
)
登录后复制

二维数组转为一维数组的2种方法:

如何将下面的二维数组转为一维数组。

<?php
header("Content-Type:text/html; charset=utf-8");
$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_column($msg, 'name', 'id');

print_r($n);的结果为:

Array(
  [45]=>jack
  [34]=>mary
  [78]=>lili
)
登录后复制

【相关教程推荐】

1. 相关专题推荐:《php数组(Array)

2. 相关视频课程推荐: 《同时对多个数组进行排序,多维数组先按值转为一维数组:array_multisort()



以上就是PHP一维数组与二维数组相互转换的示例的详细内容,更多请关注Work网其它相关文章!

09-19 13:17