Heim  >  Artikel  >  Backend-Entwicklung  >  PHP sortiert Arrays nach der Größe eines bestimmten Schlüsselwerts

PHP sortiert Arrays nach der Größe eines bestimmten Schlüsselwerts

小云云
小云云Original
2018-03-14 09:16:242457Durchsuche

In diesem Artikel wird hauptsächlich die Methode von PHP zum Sortieren nach der Größe eines bestimmten Schlüsselwerts des Arrays vorgestellt, wobei PHPs Betriebsfähigkeiten für das Durchlaufen von Arrays, das Sortieren und andere verwandte Vorgänge einbezogen werden Ich hoffe, es kann dir helfen.

Problem: Sortieren nach Schlüsselwert eines bestimmten Arrays

Lösung:


//$a是排序数组,$b是要排序的数据集合,$result是最终结果
$b = array(
  array('name'=>'北京','nums'=>'200'),
  array('name'=>'上海','nums'=>'80'),
  array('name'=>'广州','nums'=>'150'),
  array('name'=>'深圳','nums'=>'70')
  );
$a = array();
foreach($b as $key=>$val){
  $a[] = $val['nums'];//这里要注意$val['nums']不能为空,不然后面会出问题
}
//$a先排序
rsort($a);
$a = array_flip($a);
$result = array();
foreach($b as $k=>$v){
  $temp1 = $v['nums'];
  $temp2 = $a[$temp1];
  $result[$temp2] = $v;
}
//这里还要把$result进行排序,健的位置不对
ksort($result);
//然后就是你想看到的结果了
var_dump($result);

Laufergebnisse:


array(4) {
 [0]=>
 array(2) {
  ["name"]=>
  string(4) "北京"
  ["nums"]=>
  string(3) "200"
 }
 [1]=>
 array(2) {
  ["name"]=>
  string(4) "广州"
  ["nums"]=>
  string(3) "150"
 }
 [2]=>
 array(2) {
  ["name"]=>
  string(4) "上海"
  ["nums"]=>
  string(2) "80"
 }
 [3]=>
 array(2) {
  ["name"]=>
  string(4) "深圳"
  ["nums"]=>
  string(2) "70"
 }
}

Verwandte Empfehlungen:

Beispiele für häufig verwendete Sortierimplementierungsmethoden in PHP

Detaillierte Erläuterung der PHP-Blasen-, Auswahl-, Einfügungs- und Schnellsortierungsmethoden

PHP-Implementierungen mehrere gängige Sortieralgorithmen

Das obige ist der detaillierte Inhalt vonPHP sortiert Arrays nach der Größe eines bestimmten Schlüsselwerts. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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