PHPで配列の要素を並び替える方法

PHPで配列の要素を並び替える方法

58 回閲覧されました

みなさんこんにちは、jonioです。

今回は配列の要素を並び替える為のメモになります。

sort

これは配列の要素を昇順に並べます。

下記のコードを書いたとします。

<?php
  $money = [100, 50, 20, 4000];

  sort($money);

  var_dump($money);
?>

結果は下記になります。

array(4) {
  [0]=>int(20)
  [1]=>int(50)
  [2]=>int(100)
  [3]=>int(4000)
}

rsort

これは配列の要素を降順に並べます。

下記のコードを書いたとします。

<?php
  $money = [100, 50, 20, 4000];

  rsort($money);

  var_dump($money);
?>

結果は下記になります。

array(4) {
  [0]=>int(4000)
  [1]=>int(100)
  [2]=>int(50)
  [3]=>int(20)
}

asort

これは連想配列のvalueの値を昇順に並べます。

下記のコードを書いたとします。

<?php
  $money = ['yamada' => 100, 'takeda' => 50, 'imai' => 20, 'deo' => 4000];

  asort($money);

  var_dump($money);
?>

結果は下記になります。

array(4) {
  ["imai"]=>int(20)
  ["takeda"]=>int(50)
  ["yamada"]=>int(100)
  ["deo"]=>int(4000)
}

arsort

これは連想配列のvalueの値を降順に並べます。

下記のコードを書いたとします。

<?php
  $money = ['yamada' => 100, 'takeda' => 50, 'imai' => 20, 'deo' => 4000];

  arsort($money);

  var_dump($money);
?>

結果は下記になります。

array(4) {
  ["deo"]=>int(4000)
  ["yamada"]=>int(100)
  ["takeda"]=>int(50)
  ["imai"]=>int(20)
}

ksort

これは連想配列のkeyの値を昇順に並べます。

下記のコードを書いたとします。

<?php
  $money = [3 => 100, 0 => 50, 1 => 20, 2 => 4000];

  ksort($money);

  var_dump($money);
?>

結果は下記になります。

array(4) {
  [0]=>int(50)
  [1]=>int(20)
  [2]=>int(4000)
  [3]=>int(100)
}

krsort

これは連想配列のkeyの値を降順に並べます。

下記のコードを書いたとします。

<?php
  $money = [3 => 100, 0 => 50, 1 => 20, 2 => 4000];

  krsort($money);

  var_dump($money);
?>

結果は下記になります。

array(4) {
  [3]=>int(100)
  [2]=>int(4000)
  [1]=>int(20)
  [0]=>int(50)
}