Heim >Backend-Entwicklung >PHP-Tutorial >PHP sortiert ein gegebenes zweidimensionales Array nach dem angegebenen Schlüsselwert

PHP sortiert ein gegebenes zweidimensionales Array nach dem angegebenen Schlüsselwert

WBOY
WBOYOriginal
2016-08-08 09:31:051468Durchsuche
<?php
//PHP一维数组的排序可以用sort(),asort(),arsort()等函数,但是PHP二维数组的排序需要自定义。
//以下函数是对一个给定的二维数组按照指定的键值进行排序,先看函数定义:
function array_sort($arr,$keys,$type='asc'){
	$keysvalue = $new_array = array();
	foreach ($arr as $k=>$v){
		$keysvalue[$k] = $v[$keys];
	}
	if($type == 'asc'){
		asort($keysvalue);
	}else{
		arsort($keysvalue);
	}
	reset($keysvalue);
	foreach ($keysvalue as $k=>$v){
		$new_array[$k] = $arr[$k];
	}
	return $new_array;
}
//它可以对二维数组按照指定的键值进行排序,也可以指定升序或降序排序法(默认为升序),用法示例:
$array = array(
		array('name'=>'手机','brand'=>'诺基亚','price'=>1050),
		array('name'=>'笔记本电脑','brand'=>'lenovo','price'=>4300),
		array('name'=>'剃须刀','brand'=>'飞利浦','price'=>3100),
		array('name'=>'跑步机','brand'=>'三和松石','price'=>4900),
		array('name'=>'手表','brand'=>'卡西欧','price'=>960),
		array('name'=>'液晶电视','brand'=>'索尼','price'=>6299),
		array('name'=>'激光打印机','brand'=>'惠普','price'=>1200)
		);
//下面是对$array这个二维数组按照'price'从低到高的排序。
$ShoppingList = array_sort($array,'price');
print_r($ShoppingList);

Das Obige stellt PHP vor, um ein bestimmtes zweidimensionales Array nach dem angegebenen Schlüsselwert zu sortieren, einschließlich Aspekten des Inhalts. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn