分類

    Qumeru

    array_values関数 | PHP関数リファレンス

    利用できるPHPのバージョンPHP 4, 5, 7

    array_values関数とは

    array_values関数は、配列のすべての値を取得する関数です。すべての値を取得する際に、値を添字配列にして返却します。

    array_unique関数を使った後で飛び飛びの添字配列のインデックスを再採番する際や、連想配列添字配列へ変換する時に便利な関数です。

    array_values関数の使い方

    構文

    array_values ( 配列 );

    パラメータ

    array_values関数のパラメータへは、第一引数へ 値を取得したい配列をセットします。

    返り値

    全ての値を取り出し、数値添字をつけた配列を返します。

    array_values関数を使った例

    連想配列で作られたデータをarray_values関数を用いて、添字配列へ変換する方法を サンプルコードを使って解説します。

    例えば、顧客IDがキー(key)となった顧客データの配列を、0から連番で採番するなどです。

    連想配列

    $variables = [
        '0001' => ['name' => '山口 太郎', 'department' => '営業部', 'birthday' => '1999-01-01'],
        '0024' => ['name' => '広島 太郎', 'department' => '総務部', 'birthday' => '1999-01-01'],
        '0005' => ['name' => '鳥取 花子', 'department' => '営業部', 'birthday' => '1999-01-01'],
        '0014' => ['name' => '島根 太郎', 'department' => '人事部', 'birthday' => '1999-01-01'],
        '0004' => ['name' => '岡山 太郎', 'department' => '開発部', 'birthday' => '1999-01-01'],
        '0235' => ['name' => '高知 花子', 'department' => '営業部', 'birthday' => '1999-01-01'],
        '0675' => ['name' => '愛媛 太郎', 'department' => '営業部', 'birthday' => '1999-01-01'],
        '6782' => ['name' => '福島 太郎', 'department' => '総務部', 'birthday' => '1999-01-01'],
        '0435' => ['name' => '香川 花子', 'department' => '開発部', 'birthday' => '1999-01-01'],
        '0078' => ['name' => '山田 太郎', 'department' => '経理部', 'birthday' => '1999-01-01'],
    ];

    上記は、顧客IDがキー(key)の顧客データの配列です。このままキー(key)を振りなおしてもいいのですが、せっかくなのでIDを昇順で並び替えてから採番したいと思います。

    配列のキー(key)で昇順ソートを行うにはksort関数を用います。今回の例では、文字列のキー(key)を数値で並び替えをしたいので第二引き数へSORT_NUMERICを指定しています。

    ksort関数

    ksort( $variables, SORT_NUMERIC );

    並び替え後の配列はこのようになります。

    並び替えた配列をarray_values関数を使って取得した結果が下記になります。

    顧客IDであったキー(key)が、0からの連番になっている事がわかります。

    array_values関数は、array_unique関数を利用後に飛び飛びになった配列のインデックスを詰めるのにも利用できます。下記ではarray_unique関数と併せて利用する例をご紹介しています。

    PHPで配列を重複なしで結合する方法を解説!のイメージ
    PHPで配列を重複なしで結合する方法を解説!
    PHPで複数の配列を重複しないように結合する方法と、気を付けるべきポイントについて、サンプルコード付きで解説します。
    PHPで配列の中に同じ値があるかチェックする方法を解説!のイメージ
    PHPで配列の中に同じ値があるかチェックする方法を解説!
    PHPで配列の中に重複する値が存在するかをチェックする方法についてご紹介します。型の異なる値のチェックについてもサンプルコードと共に解説していきます。