demo示例:

 $data = array(
'0' => array('id' => 10, 'username' => '陈一'),
'1' => array('id' => 11, 'username' => '洪二'),
'2' => array('id' => 12, 'username' => '张三'),
'3' => array('id' => 13, 'username' => '李四')
);

方法一:  foreach循环方法实现

 foreach ($data as $key=>$value) {
$idData[] = $value['id'];
$usernameData[] = $value['username'];
} var_dump($idData);//array(4) { [0]=> int(10) [1]=> int(11) [2]=> int(12) [3]=> int(13) }
var_dump($usernameData);//array(4) { [0]=> string(6) "陈一" [1]=> string(6) "洪二" [2]=> string(6) "张三" [3]=> string(6) "李四" }

方法二:  array_map函数方法  函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新值的数组.

 $callBackData = array_map(function($value){
return $usernameData[] = $value['username'];
}, $data);
var_dump($callBackData);//array(4) { [0]=> string(6) "陈一" [1]=> string(6) "洪二" [2]=> string(6) "张三" [3]=> string(6) "李四" }

方法三: array_column函数方法  相对实现简单,但是要求PHP版本必须是5.5.0及以上版本

 $usernameData = array_column($data, 'username');
var_dump($usernameData);//array(4) { [0]=> string(6) "陈一" [1]=> string(6) "洪二" [2]=> string(6) "张三" [3]=> string(6) "李四" }

方法四: array_walk函数方法  函数对数组中的每个元素应用用户自定义函数.在函数中,数组的键名和键值是参数.

 $usernameData = array();
array_walk($data, function($value, $key) use (&$usernameData){
$usernameData[] = $value['username'];
});
var_dump($usernameData);//array(4) { [0]=> string(6) "陈一" [1]=> string(6) "洪二" [2]=> string(6) "张三" [3]=> string(6) "李四" }

方法五: array_reduce函数方法  函数向用户自定义函数发送数组中的值,并处理最终返回值.

array_reduce(array,myfunction,initial)  注意: PHP 5.3.0 以上,initial 参数接受多类型(混合的);  PHP 5.3.0 之前的版本只支持整数.

 $usernameData = array_reduce($data,function(&$usernameData,$v){
$usernameData[] = $v['username'];
return $usernameData;
});
var_dump($usernameData);//array(4) { [0]=> string(6) "陈一" [1]=> string(6) "洪二" [2]=> string(6) "张三" [3]=> string(6) "李四" }

php二维数组对某一列进行数据组装的更多相关文章

  1. C语言:将3*5矩阵中第k列的元素左移到第0列,第k列以后的每列元素依次左移,原来左边的各列依次绕到右边。-在m行m列的二维数组中存放如下规律的数据,

    //将3*5矩阵中第k列的元素左移到第0列,第k列以后的每列元素依次左移,原来左边的各列依次绕到右边. #include <stdio.h> #define M 3 #define N 5 ...

  2. C二维数组行为空,列不为空

    二维数组: 处理二维数组得函数有一处可能不太容易理解:数组的行可以在函数调用时传递,但是数组的列却只能被预置在函数内部. eg: #define COLS 4 int sum(int ar[][COL ...

  3. php获取二维数组中某一列的值集合

    $result //二维数组$uid_list = array_column($result, 'uid');

  4. 模拟水题,查看二维数组是否有一列都为1(POJ2864)

    题目链接:http://poj.org/problem?id=2864 题意:参照题目 哈哈哈,这个题discuss有翻译哦.水到我不想交了. #include <cstdio> #inc ...

  5. PHP方便快捷的将二维数组中元素的某一列值抽离出来作为此二维数组内元素的key

    得益于PHP的强大的内置数组函数array_column();array_combine(); 举个小栗子: <?php // 先查询出用户的基本信息 $userArray = [['id' = ...

  6. 从txt文件中读取数据放在二维数组中

    1.我D盘中的test.txt文件内的内容是这样的,也是随机产生的二维数组 /test.txt/ 5.440000 3.4500006.610000 6.0400008.900000 3.030000 ...

  7. C语言基础--二维数组

    二维数组概念: 数组中的每一个元素又是一个数组, 那么这个数组就称之为二维数组,二维数组是特殊的一维数组. 二维数组格式: 元素类型 数组名称[一维数组的个数][每个一维数组的元素个数]; 元素类型 ...

  8. 剑指offer-面试题3.二维数组中的查找

    题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增 的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断该数组中是否有该整数. 算法流程如下: 比如一个 ...

  9. Python之二维数组N*N顺时针旋转90度

    需求:把一个二维数组顺时针旋转90度,现实数据的替换. 比如把4*4的二维数组顺时针旋转90度 原始数据是一个嵌套列表:[['A', 'B', 'C', 'D'], ['A', 'B', 'C', ' ...

随机推荐

  1. 基于PyQt5的Python-Gui开发

    环境搭建 电脑环境 win10 64位系统 Python3.5安装 从Python官网下载python3.5安装文件,选择windows 64位版本python-3.6.5-amd64.exe.双击安 ...

  2. 20191023 XXL-JOB

    概述 XXL-JOB是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速.学习简单.轻量级.易扩展.现已开放源代码并接入多家公司线上产品线,开箱即用. 文档地址: 官方文档 文档写的很详细,参考着 ...

  3. Spring MVC-学习笔记(1)认识spring mvc

    1.基于XML Schema.Controller接口的spring mvc简单例子 1>创建一个动态Web项目,选择同时创建web.xml文件 2>在WEB-INF/lib中粘贴spri ...

  4. MySQL-第十三篇使用ResultSetMetaData分析结果集

    1.Result里面包含了一个getMetaData()方法,该方法返回该ResultSet对应的ResultSetMetaData对象. 2.ResultSetMetaData包含的方法: 1> ...

  5. jsp对象 指令 动作

    转载来源:https://blog.csdn.net/u010897406/article/details/49618413 jsp九大内置对象:1>out 向客户端输出数据,字节流.如out. ...

  6. Codeforces 1058C(思维+最大公因数)

    题面 传送门 分析 引理1:三角形的面积\(\times 2\)一定是整数 由坐标系中的三角形面积公式 \[S=\frac{1}{2}(x_1y_2+x_2y_3+x_3y_1-x_1y_3-x_2y ...

  7. Keyboarding (bfs+预处理+判重优化)

    # #10030. 「一本通 1.4 练习 2」Keyboarding [题目描述] 给定一个 $r$ 行 $c$ 列的在电视上的"虚拟键盘",通过「上,下,左,右,选择」共 $5 ...

  8. IE, Chrome和Firefox浏览器 差异对比

    最近的项目中使用Extjs5.6, 其中主要的一个特点就是js文件的动态加载,之前使用Firefox浏览器对js文件进行调试,打断点时,只对当次调试有效,刷新之后,由于动态加载的js文件(文件名后面加 ...

  9. MicroPython 的优势

    定位的场景 MicroPython 在设计上最初就是为了嵌入式微处理器运行,例如在 nRF51822 (256kB flash + 16kB RAM) 的芯片上也可以运行起来,也有人肾得慌在 STM3 ...

  10. Linux--shell交互输入与循环语句--06

    一.交互输入 1.命令用法:read a b c   -> aa bb cc read命令同时可以定义多个变量值:而输入的内容默认以空格为分隔符,将值输入到对应的变量中:如果默认值输入过多,最后 ...