勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

PHPで多次元連想配列のキーを指定してソートする方法

   2026/10/02  PHP

PHPで多次元配列から指定したキーでソート(並べ替え)したい。以下に対応方法をメモ。

 

対応方法

ソースコード

$data = [
	[
		'id' => 4,
		'name' => '田中',
	],
	[
		'id' => 1,
		'name' => '鈴木',
	],
	[
		'id' => 2,
		'name' => '山田',
	],
	[
		'id' => 3,
		'name' => '佐々木',
	],
];

var_dump($data);

$idList = array_column($data, 'id');
array_multisort($idList, SORT_ASC, $data);

var_dump($data);

出力結果

# ソート前
array(4) {
  [0]=>
  array(2) {
    ["id"]=>
    int(4)
    ["name"]=>
    string(6) "田中"
  }
  [1]=>
  array(2) {
    ["id"]=>
    int(1)
    ["name"]=>
    string(6) "鈴木"
  }
  [2]=>
  array(2) {
    ["id"]=>
    int(2)
    ["name"]=>
    string(6) "山田"
  }
  [3]=>
  array(2) {
    ["id"]=>
    int(3)
    ["name"]=>
    string(9) "佐々木"
  }
}

# ソート後
array(4) {
  [0]=>
  array(2) {
    ["id"]=>
    int(1)
    ["name"]=>
    string(6) "鈴木"
  }
  [1]=>
  array(2) {
    ["id"]=>
    int(2)
    ["name"]=>
    string(6) "山田"
  }
  [2]=>
  array(2) {
    ["id"]=>
    int(3)
    ["name"]=>
    string(9) "佐々木"
  }
  [3]=>
  array(2) {
    ["id"]=>
    int(4)
    ["name"]=>
    string(6) "田中"
  }
}

 

リファレンス

array_column

https://www.php.net/manual/ja/function.array-column.php

array_multisort

https://www.php.net/manual/ja/function.array-multisort.php

 - PHP

  関連記事

opauthのTwitterでログインできない際の対応方法
opauthのTwitterでログインできない際の対応方法

opauthを使ったソーシャルログインのシステムにてTwitterでログインでき ...

PHPにて「Fatal error: Uncaught Exception ~~」エラーの対応方法
PHPにて「Fatal error: Uncaught Exception ~~」エラーの対応方法

PHPにてDatetimeクラスの呼び出し時にタイムスタンプを指定しようとすると ...

PHPでLINEログイン後「ユーザー名」「ユーザーID」「プロフィール画像URL」「メッセージ」を取得する方法
PHPでLINEログイン後「ユーザー名」「ユーザーID」「プロフィール画像URL」「メッセージ」を取得する方法

<a>タグのリンクからページ遷移するとLINEログインし、その後に「 ...

PHPでjpg / png画像をWebP画像に変換し保存する方法
PHPでjpg / png画像をWebP画像に変換し保存する方法

PHPでjpg / png画像を圧縮したかった。ただjpg / pngのままだと ...

TCPDF「Could not include font definition」エラーの対処方法
TCPDF「Could not include font definition」エラーの対処方法

TCPDFでフォントを「arialunicid0」に指定したところ「TCPDF ...