PHP

PHP

array_multisort()関数を使って多次元配列をソートしてみる

配列をソートする時、

例えば、

$arr_data = array("テストデータ03", "テストデータ02", "テストデータ04",  "テストデータ01");

という配列があったとすると、

 

sort($arr_data);

とすれば昇順に、

 

rsort($arr_data);

とすれば降順に簡単にソートできます。

 

これ、

多次元配列も同じようにソートできるの?

 

となると、

それは無理です。

 

じゃあ、

多次元配列の時はどうやってソートするのかといえば、

array_multisort()関数を使ってやります。

 

sort()関数やrsort()関数に比べれば多少面倒ですが、

慣れればそんなに難しいものでもありません。

 

例えば、

のようなデータを更新日ジュンに並べ替えたい時には、

とするだけです。

 

要は、

foreach()を使って更新日(modified)の配列を作ってやり、

あとは、

array_multisort()関数に適切にデータをセットして実行するだけ。

 

これだけで、

多次元配列のソートにも対応できます。

 

因みに、

データを昇順に並び替えたい場合には、

2番目の引数に「SORT_DESC」ではなく「SORT_ASC」をセットしてやります。

 

 

http://blog.quall.net/program/235/

この辺のサイトに書いてくれていることを参考すれば、

多次元配列を複数項目でソートするも簡単にできそうですね!!

関連記事

  1. PHP

    PHP

    PHPExcel テンプレートを使用してエクセルを出力

    今回は、テンプレートを使用したエクセル出力の方法を紹介します。…

  2. PHP

    PHP

    【CVE-2017-5340】PHP7 脆弱性の対応

    結構前の話になってしまうのですが、PHP7.0.xxとPHP7.1…

  3. PHP

    PHP

    【PHP】数字を指定の桁数にフォーマット(0埋め)

    PHPを使って、数字を指定した桁数にフォーマットする方法数…

  4. PHP

    PHP

    PHP クッキー(Cookie)にセキュア属性(secure属性)を付与

    セキュリティの専門家の方からの指摘で、本日は、以前組んだシステ…

  5. PHP

    PHP

    PHP パスワードのクライアントへの表示について

    サイト制作を行っていると、会員制サイトを構築することも多々あると思…

  6. PHP

    PHP

    PHPでは'01'と'1'は同じなの!?

    PHPで、などとすると'01'と'1'は同じってみなされるの?…

最近の記事

  1. PHP
  2. PHP
  3. 風邪予防
  4. WordPress(WP)
  5. PHP
  6. 宅建
  7. アンチWP
  8. 日本語ドメイン
  9. WordPress(WP)
  10. SSL(HTTPS通信)
PAGE TOP