ホームページ  >  記事  >  バックエンド開発  >  PHP_PHP チュートリアルでの配列のグループ化ソートの例

PHP_PHP チュートリアルでの配列のグループ化ソートの例

WBOY
WBOYオリジナル
2016-07-13 10:29:09706ブラウズ

PHP 配列、配列の内容はおおよそ次のとおりです:

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

$list = array(
array(2,3,5),
array(2) ,5,24) ,
配列(3,8,6),
配列(3,2,10),
配列(4,7,20),
配列(4,1,15),
配列(6) ,4,10) ,
array(7,9,20),
);

表現の便宜上、3 列の数値をそれぞれ ABC の 3 列と呼びます

要件: デフォルトでは、並べ替えは列 A に基づいて行われます。列 A が同じ場合、同じ要素が列 C で逆順に並べ替えられます。 B列は実際にはソートには関与しませんが、実務で役立つのでこれも書き出してみました。

方法 1:

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

$a = $c = array();
foreach($list as $val){
$a[] = $val [0]; //列 a
$c[] = $val[2]; //列 c
}
//SQL の orderby と同様に、列 a を降順でインストールします。 a asc,b desc
array_multisort($a ,SORT_ASC, $c, SORT_DESC, $list);
print_r($list);

方法 2:
コードをコピーします コードは次のとおりです:

for($j=0;$j for($i=count($list)-1;$i>$j;$i--){
if ($list[$i][0] == $list [$i-1][0] && $list[$i][2] > $list[$i-1][2])
list( $list[$i],$list[$i-1 ]) = array($list[$i-1],$list[$i]);
}
}

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/779000.html技術記事 PHP 配列、配列の内容はおおよそ次のとおりです。 次のようにコードをコピーします。 $list = array( array(2,3,5), array(2,5,24), array(3,8,6) 、配列( 3,2,10)、配列(4,7,20)、配列(4,1,15)、...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。