ホームページ  >  記事  >  バックエンド開発  >  PHP_PHP チュートリアルでの多次元配列の簡単なソート

PHP_PHP チュートリアルでの多次元配列の簡単なソート

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

多次元配列内の特定の要素で並べ替えるには、関数でコールバック関数を呼び出すことも、array_multisort($a,$b) などの PHP 独自の関数を使用することもできます。 、 $ a、 $b が 2 つの配列である場合、並べ替え後に $a 配列の 3 番目の要素が最初にランク付けされると、 $b のサイズに関係なく、 $b の 3 番目の要素が最初にランク付けされます。以下のプログラムの実行結果を見てください:

コードは次のとおりですコードをコピー
$a =array(100,80,50,10,0);
$b = array("c","f","q","e","z");
array_multisort($a,$b);
var_dump($a);
var_dump($b);
?>

実行結果:

コードは次のとおりですコードをコピー
配列(5) { [0]=> int(0) [1]=> int(50) [3]=> > int(100) }

配列(5) { [0]=> 文字列(1) “z” [1]=> 文字列(1) “q” [3]=>文字列(1) "f" [4]=> 文字列(1) "c" }

並べ替えを実装するカスタム関数

コードは次のとおりですコードをコピー現時点では、$arr は注文サイズによってソートされています (笑)...
$arr = 配列(


'index'=>array( 'name'=>'ホーム','order'=>3),

'intro'=>array( 'name'=>'会社概要','order'=>2),

'ニュース'=>array( '名前'=>'ニュース','順序'=>1 ),

'product'=>array( 'name'=>'プロダクト センター','order'=>4 ),

'message'=>array( 'name'=>'ゲストメッセージ','order'=>7 ),

'position'=>array( 'name'=>'人材採用','order'=>6),

'contact'=>array( 'name'=>'お問い合わせ','order'=> 5 )

);
uasort($arr, 'cmp');
パブリック関数 cmp($a, $b){

$a['order'] - $b['order'] を返します

}


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

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/633103.html技術記事多次元配列の要素による並べ替えは、1 つの関数でコールバック関数を呼び出すだけで非常に簡単です。array_multisor などの PHP 独自の関数も使用できます。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。