php中的排序数组?

php中的排序数组?,php,Php,我有一个这样的数组 这里我需要基于排序键的“评级”,我需要期望输出是 [{"id"="3","rating"=>[{"rating"=>"3"}]},{"id"="2","rating"=>[{"rating"=>"2"}]},{"id"=>"1","rating"=>[{"rating"=>"1"}]}] 谁能给我指点一下我怎么能拿到这个 感谢您的帮助。您可以使用php函数usort 你应该提供你的函数来实现你的分类。比如说 function

我有一个这样的数组

这里我需要基于排序键的“评级”,我需要期望输出是

[{"id"="3","rating"=>[{"rating"=>"3"}]},{"id"="2","rating"=>[{"rating"=>"2"}]},{"id"=>"1","rating"=>[{"rating"=>"1"}]}] 
谁能给我指点一下我怎么能拿到这个


感谢您的帮助。

您可以使用php函数usort

你应该提供你的函数来实现你的分类。比如说

 function your_sort($a, $b)
 {
     return $b['rating'] - $a['rating'];
 }

 your_sort($array, "cmp");

yuo可以使用php函数usort

你应该提供你的函数来实现你的分类。比如说

 function your_sort($a, $b)
 {
     return $b['rating'] - $a['rating'];
 }

 your_sort($array, "cmp");

如果要保留密钥,请执行以下操作:

uasort($data, function($a, $b){ return ($a->rating > $b->rating); });
如果你不

usort($data, function($a, $b){ return ($a->rating > $b->rating); });

如果要保留密钥,请执行以下操作:

uasort($data, function($a, $b){ return ($a->rating > $b->rating); });
如果你不

usort($data, function($a, $b){ return ($a->rating > $b->rating); });
资料来源:


来源:

注意数组中的项似乎是对象,并且“rating”属性是一个字符串,可能应该转换为数字

function f_my_sort($a, $b) {
  if ($a->id==$b->id) return 0;
  return ( intval($a->rating) < intval($b->rating) ) ? -1 : 1;
}

usort($my_array, "f_my_sort");
我的排序函数($a,$b){
如果($a->id==$b->id)返回0;
返回(intval($a->评级)评级))?-1:1;
}
usort($my_数组,“f_my_排序”);

注意数组中的项似乎是对象,“rating”属性是一个字符串,可能应该转换为数字

function f_my_sort($a, $b) {
  if ($a->id==$b->id) return 0;
  return ( intval($a->rating) < intval($b->rating) ) ? -1 : 1;
}

usort($my_array, "f_my_sort");
我的排序函数($a,$b){
如果($a->id==$b->id)返回0;
返回(intval($a->评级)评级))?-1:1;
}
usort($my_数组,“f_my_排序”);

只要看一下手册,特别是:另外,数组中所有的
=
符号都应该是
=>
符号。只要看一下手册,特别是:另外,数组中所有的
=
符号都应该是
符号。