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

yipeiwu_com5年前PHP代码库

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

复制代码 代码如下:

$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
)

相关文章

PHP实现简单实用的验证码类

本文实例讲述了PHP实现简单实用的验证码类。分享给大家供大家参考。具体如下: <?php /** * @version 1.0 * @author bolted sn...

使用ThinkPHP自带的Http类下载远程图片到本地的实现代码

Http类在目录ThinkPHP/Lib/ORG/Net下面。接下来看看是如何调用的。 复制代码 代码如下: <?php import("Com.Buyback.QueryAmaz...

Thinkphp框架中D方法与M方法的区别

D()和M()方法的区别: D和M的区别主要在于 M方法不需要创建模型类文件,M方法不会读取模型类,所以默认情况下自动验证是无效的,但是可以通过动态赋值的方式实现 而D方法必须有创建模型...

PHP面向对象法则

你不必严格遵守这些原则,违背它们也不会被处以宗教刑罚。但你应当把这些原则看成警铃,若违背了其中的一条,那么警铃就会响起 。 ----- Arthur J.Riel   (1)所有数据都应...

PHP安装memcached扩展笔记

PHP安装memcached扩展笔记

最近在服务器上部缓存系统,记录一下PHP安装memcached扩展。 复制代码 代码如下: # 安装服务端 yum install memcached -y I. launchpad...