php二维数组排序, 根据某个元素进行排序

本例主要用到两个php函数 array_column,  array_multisort

在php版本是5.5以下的使用 array_column 函数会报错 :Fatal error: Call to undefined function array_column()

解决方法是判断有没有array_column这个函数,然后自定义一个

 

附上代码:

<?php
$taskArr= array(
    array(
        'id' => 3,
        'name' => 'haojian',
        'title' => 'hello a'
    ),
    array(
       'id' => 1,
       'name' => 'jianjiande',
       'title' => 'hello b'
    ),
    array(
      'id' => 2,
      'name' => 'zhengjian',
      'title' => 'hello c'
    )
);

//php版本5.5及其以上的可以不用自定义array_column函数
if (!function_exists('array_column')) {
	function array_column($arr2, $column_key) {
		$data = [];
		foreach ($arr2 as $key => $value) {
			$data[] = $value[$column_key];
		}
		return $data;
	}
}

$order_id_arr = array_column($taskArr,'id');
array_multisort($order_id_arr,SORT_ASC,$taskArr);  //SORT_ASC升序, SORT_DESC降序

var_dump($taskArr);

?>

 

linux查看php版本命令:  php -v

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值