SYNCER

SYNCER

natcasesort() - 配列を値で大文字小文字の区別なしの自然順にソートする

公開日:

natcasesortは、指定した配列を値で自然順にソートする関数です。その際に、大文字と小文字を区別しません。自然順とは、人間がするような手法でのソート方法で、例えば、"test10""test2"よりも後にソートします。

構文

bool natcasesort ( array &$array )

パラメータ

&$array

対象の配列。

返り値

bool

ソートに成功した場合はtrue、失敗した場合はfalseを返す。

サンプルコード

大文字・小文字を区別する場合

まずは同じ働きで、大文字・小文字を区別するnatsortの例を見て下さい。このように、同じ内容の文字列でも大文字が目、小文字が後にソートされます。

php

<?php
	// 配列
	$queue = [ "test1", "test2", "TEST10" ] ;

	// 実行
	$result = natsort( $queue ) ;

	// 結果
	var_dump( $result ) ;	// 返り値
	echo "\n" ;
	print_r( $queue ) ;	// $bの内容

結果 (出力内容) - PHP7.0.21

bool(true)

Array
(
    [2] => TEST10
    [0] => test1
    [1] => test2
)

大文字・小文字を区別しない場合

次に大文字・小文字を区別しないnatcasesortの例を見てみましょう。大文字・小文字を区別しないで、自然順に並び替えてくれました。

php

<?php
	// 配列
	$queue = [ "test1", "test2", "TEST10" ] ;

	// 実行
	$result = natcasesort( $queue ) ;

	// 結果
	var_dump( $result ) ;	// 返り値
	echo "\n" ;
	print_r( $queue ) ;	// $bの内容

結果 (出力内容) - PHP7.0.21

bool(true)

Array
(
    [0] => test1
    [1] => test2
    [2] => TEST10
)

サンドボックス

ソースコードを編集してnatcasesort()の挙動を確認して下さい。

bool(true)

Array
(
    [0] => test1
    [1] => test2
    [2] => TEST10
)

参考リンク

  • PHP - 公式マニュアル。