SYNCER

SYNCER

arsort() - 配列をキーと値の関係を維持したまま逆順にソートする

公開日:

arsortは、配列のキーと値の組み合わせを維持したまま、逆順にソートする関数です。ソート判定で複数の要素が同じ順番になる場合、並び順は不定になります。この関数は元の配列を変更します。

構文

bool arsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )

パラメータ

&$array

対象の配列。

$sort_flags

初期値: SORT_REGULAR

ソートの方法。デフォルトでは型変換を行なわない通常の比較。

SORT_REGULAR
型変更をしないで比較する。
SORT_NUMERIC
数値に型変更をして比較する。
SORT_STRING
文字列に型変更をして比較する。
SORT_LOCALE_STRING
ロケールに基づいた文字列に変更して比較する。
SORT_NATURAL
文字列として自然順で比較する。例えば、"test1""test10""test2"ではなく、"test1""test2""test10"のように、人間が馴染みやすくソートする。
SORT_FLAG_CASE
文字列のソートで大文字、小文字を区別しない。

返り値

bool

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

サンプルコード

連想配列を逆順にソートする

配列を逆順にソートします。その際、キーと値の関係は維持されます。

php

<?php
	// 配列
	$queue = [
		"a" => "CC" ,
		"b" => "DD" ,
		"c" => "AA" ,
		"d" => "BB" ,
	] ;

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

	// 結果
	var_dump( $result ) ;	// 返り値
	echo "\n" ;
	print_r( $queue ) ;	// 実行後の配列

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

bool(true)

Array
(
    [b] => DD
    [a] => CC
    [d] => BB
    [c] => AA
)

サンドボックス

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

bool(true)

Array
(
    [b] => DD
    [a] => CC
    [d] => BB
    [c] => AA
)

参考リンク

  • PHP - 公式マニュアル。