If there are no duplicate values, you can first use array_flip() to exchange the keys and values, then krsort(), and finally exchange them back with array_flip() to compare the sizes. If you want to intercept an array, use array_slice().
If there are duplicate values, some sorting algorithm will be used. However, PHP has a very powerful function uasort(), which uses a custom comparison function to sort the values in the array and maintain the index association. , usort() will rebuild the index.
Copy code The code is as follows:
function cmp($a, $b){
if ( $a["vote_num"] == $b["vote_num"]) {
return 0;
}
return ($a["vote_num"] > $b["vote_num"]) ? -1 : 1;
}
$arr = Array
(
0 => Array
(
o_id => 1861,
o_name = > 2,
o_pic => 'http://g.jb51.net/image.gif' ,
o_detail => Renren,
vote_num => 1
),
1 => Array
(
o_id => 1844,
o_name => Barbie,
o_pic => 'http://upload.jb51.net /game_image/dfxxz/dfVIP.files/shenxiandao.jpg',
o_detail => She is also a beauty,
vote_num => 2
),
2 => Array
(
o_id => 1843,
o_name => Cheng Cheng,
o_pic => 'http://g.jb51.net./upload_img/2011-06/31554_4d0088da7a61ad9c8c02a530be94d98e.p ng ',
o_detail => Beauty,
vote_num => 3
)
);
uasort($arr, ”cmp“);
echo '< pre style="text-align:left" >';
print_r ($arr);
echo '< / pre >';
return
Copy code The code is as follows:
Array
(
[2] => Array
(
[ o_id] => 1843
[o_name] => Cheng Cheng
[o_pic] => http://g.jb51.net./upload_img/2011-06/31554_4d0088da7a61ad9c8c02a530be94d98e.png
[ o_detail] => Beauty
[vote_num] => 3
)
[1] => Array
(
[o_id] => 1844
[o_name ] => Barbie
[o_pic] => http://upload.jb51.net/game_image/dfxxz/dfVIP.files/shenxiandao.jpg
[o_detail] => She is also a beauty
[vote_num] => 2
)
[0] => Array
(
[o_id] => 1861
[o_name] => 2
[o_pic ] => http://g.jb51.net/image.gif
[o_detail] => 人人
[vote_num] => 1
)
)
http://www.bkjia.com/PHPjc/326033.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/326033.htmlTechArticleIf there are no duplicate values, you can first use array_flip() to exchange keys and values, and then krsort(), Finally, swap it back with array_flip(), and you can compare the sizes. If you want to intercept the array, you can...