関数 natsort

関数 natsort は、配列を 人間が行うようにソートします。 この関数はキーと値の間の 関連を保持します。 このようなアルゴリズムは natural ordering と呼ばれます。

この関数は配列自体を変更します。

構文

phpnatsort(array &$array, int $flags = SORT_REGULAR): bool

例

通常の関数 sort を使って 配列をソートしてみましょう:

php<?php
  $arr = [
    'img12.png',
    'img10.png',
    'img2.png',
    'img1.png',
  ];
  
  sort($arr);
  var_dump($arr);
?>

コード実行結果:

php[
  'img1.png',
  'img10.png',
  'img12.png',
  'img2.png',
]

例

次に、関数 natsort を使って 自然順ソートを実行してみましょう:

php<?php
  $arr = [
    'img12.png',
    'img10.png',
    'img2.png',
    'img1.png'
  ];
  
  natsort($arr);
  var_dump($arr);
?>

コード実行結果:

php[
  'img1.png',
  'img2.png',
  'img10.png',
  'img12.png',
]

関連項目

  • 関数 sort,
    要素の昇順でソートする関数
  • 関数 rsort,
    要素の降順でソートする関数
  • 関数 ksort,
    キーの昇順でソートする関数
  • 関数 krsort,
    キーの降順でソートする関数
  • 関数 asort,
    キーを保持して要素の昇順でソートする関数
  • 関数 arsort,
    キーを保持して要素の降順でソートする関数
  • 関数 natcasesort,
    大文字小文字を区別しない自然順ソートを行う関数
  • 関数 usort,
    コールバック関数でソートする関数
  • 関数 uksort,
    コールバック関数でキーをソートする関数
  • 関数 uasort,
    キーを保持してコールバック関数でソートする関数
  • 関数 array_multisort,
    複数の配列をソートする関数