Maison >développement back-end >tutoriel php >Comment trier les tableaux en fonction de la taille de la clé

Comment trier les tableaux en fonction de la taille de la clé

php中世界最好的语言
php中世界最好的语言original
2018-03-24 17:58:331909parcourir

Cette fois, je vais vous montrer comment trier le tableau en fonction de la taille de la valeur clé et quelles sont les précautions à prendre pour trier le tableau en fonction de la taille de la valeur clé. Ce qui suit est un cas pratique, jetons un coup d'œil.

L'exemple de cet article décrit comment PHP implémente le tri en fonction de la taille d'une certaine valeur clé dans un tableau. Partagez-le avec tout le monde pour votre référence, comme suit :

Question : Trier la valeur clé d'une clé dans un tableau donné

Solution :

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

Résultat d'exécution :

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"
 }
}

Je le crois après avoir lu it Vous maîtrisez la méthode dans le cas de cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !

Lecture recommandée :

PHP implémente le routage et le chargement automatique des classes

Explication détaillée de l'utilisation de bindParam et bindValue dans Yii2

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn