ホームページ >バックエンド開発 >PHPチュートリアル >PHPは多次元配列の値のサイズを比較して実装コードをソートする_PHPチュートリアル

PHPは多次元配列の値のサイズを比較して実装コードをソートする_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:15:381395ブラウズ

重複する値がない場合は、まず array_flip() を使用してキーと値を交換し、次に krsort() を使用して、最後に array_flip() を使用してキーと値を交換してサイズを比較します。配列をインターセプトしたい場合は、array_slice() を使用します。

重複する値がある場合、いくつかの並べ替えアルゴリズムが使用されます。ただし、PHP には、カスタム比較関数を使用して配列内の値を並べ替え、インデックスの関連付けを維持する非常に強力な関数 uasort() が使用されます。 ) インデックスが再構築されます。

コードをコピー コードは次のとおりです:

function cmp($a, $b){
if ($a["vote_num"] == $b["vote_num"]) {
戻り値 0;
}
戻り値 ($a["投票番号"] > $b[投票番号"]) ? -1 : 1;
}

$arr = 配列
(
0 => 配列
o_id => 1861、
o_name => 2、
o_detail => 全員、
vote_num =>

1 => 配列
(
o_id => 1844、
o_name => バービー、
o_pic => 'http://upload.jb51.net/game_image/dfxxz/dfVIP.files/shenxiandao.jpg '、'http://g.jb51.net./upload_img/2011-06/31554_4d0088da7a61ad9c8c02a530be94d98e.png'、
o_detail =>
vote_num => 3
)
);
uasort($arr , "cmp");
echo '< pre style="text-align:left" >'
echo '<


;
コードをコピー

コードは次のようになります:


Array
(
[2] => Array
(
[o_id] => 1843
[o_name] => Cheng
[o_pic] => http: //g.jb51.net./upload_img/2011-06/31554_4d0088da7a61ad9c8c02a530be94d98e.png
[vote_num] => 配列
(
[ o_id] => 1844 [o_name] => バービー[o_pic] => http://upload.jb51.net/game_image/dfxxz/dfVIP.files/shenxiandao.jpg [o_detail] =>も美しいです[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.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/326033.html

技術記事

重複する値がない場合は、まず array_flip() を使用してキーと値を交換し、次に krsort() を使用して、最後に array_flip() を使用してキーと値を交換してサイズを比較します。配列をインターセプトしたい場合は、次のようにすることができます...




声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。