krsort()

PHPのkrsort()関数は、配列の要素を、キーの降順で、並べ替える組み込み関数。

定義

論理型 krsort( 配列型 &$array[, 数値型 $sort_flags] );

パラメータ

配列型 &$array

並べ替える対象の配列を指定。

数値型 $sort_flags

オプション。

並べ替える際の、型の取り扱いに関するフラグ。

  • SORT_REGULAR: 型変換をしない、通常の比較。
  • SORT_NUMERIC: 数値として比較。
  • SORT_STRING: 文字列として比較。
  • SORT_LOCALE_STRING: ロカール環境に基づいた文字列比較。
  • SORT_NATURAL: 自然順比較。例えば、「a10」と「a5」を自然な降順で並べると「a10,a5」になる。PHP5.4.0で追加されたパラメータ。
  • SORT_FLAG_CASE: 大文字、小文字を区別しない、文字列比較。「SORT_STRING」や「SORT_NATURAL」と、|で組み合わせて使う。PHP5.4.0で追加されたパラメータ。

戻り値

論理値。

並べ替えに成功すると「TRUE」、失敗すると「FALSE」を返す。

構文

配列要素を、キーの降順でソート

論理値 = krsort( 配列 );

「配列」の要素を、キーの降順で、並べ替える。

サンプル

連想配列の要素を、キーの降順でソート

<pre>
<?php
$varArray = array(
    "white" => "白",
    "black" => "黒",
    "red" => "赤",
    "blue" => "青",
    "green" => "緑"
);
krsort( $varArray );
print_r( $varArray );
?>
</pre>

↓↓↓出力結果↓↓↓

Array
(
    [white] => 白
    [red] => 赤
    [green] => 緑
    [blue] => 青
    [black] => 黒
)

連想配列の要素を、キーの降順でソート(大文字・小文字を区別)

<pre>
<?php
$varArray = array(
    "White" => "白",
    "Black" => "黒",
    "red" => "赤",
    "blue" => "青",
    "green" => "緑"
);
krsort( $varArray );
print_r( $varArray );
?>
</pre>

↓↓↓出力結果↓↓↓

Array
(
    [red] => 赤
    [green] => 緑
    [blue] => 青
    [White] => 白
    [Black] => 黒
)

連想配列の要素を、キーの降順でソート(大文字・小文字を区別しない)

<pre>
<?php
$varArray = array(
    "White" => "白",
    "Black" => "黒",
    "red" => "赤",
    "blue" => "青",
    "green" => "緑"
);
krsort( $varArray, SORT_STRING | SORT_FLAG_CASE );
print_r( $varArray );
?>
</pre>

↓↓↓出力結果↓↓↓

Array
(
    [White] => 白
    [red] => 赤
    [green] => 緑
    [blue] => 青
    [Black] => 黒
)

多次元配列の要素を、キーの降順でソート

<pre>
<?php
$varArray = array(
    "english" => array( "Red", "Blue", "Green" ),
    "katakana" => array( "レッド", "ブルー", "グリーン" ),
    "kanji" => array(
        "aka" => "赤",
        "ao" => "青",
        "ki" => "緑"
    ),
    "hiragana" => array( "あか", "あお", "みどり" )
);
krsort( $varArray );
print_r( $varArray );
?>
</pre>

↓↓↓出力結果↓↓↓

Array
(
    [katakana] => Array
        (
            [0] => レッド
            [1] => ブルー
            [2] => グリーン
        )

    [kanji] => Array
        (
            [aka] => 赤
            [ao] => 青
            [ki] => 緑
        )

    [hiragana] => Array
        (
            [0] => あか
            [1] => あお
            [2] => みどり
        )

    [english] => Array
        (
            [0] => Red
            [1] => Blue
            [2] => Green
        )

)

スポンサード リンク

カテゴリー: PHP, ソート, 組み込み関数, 配列 タグ: パーマリンク