関数の概要
PHPの array_values 関数は、配列のキーを無視して、その値だけを連続した数値添字の配列として取得するための関数です。連想配列やキーが混在している配列から、純粋に値だけを取り出したいときに便利です。
パラメータの説明
array: 必須 – 値を取得したい配列を指定します。
戻り値
array_values は、引数として渡した配列の「値のみ」を数値添字(0から始まる連番)の配列として返します。元の配列のキーは無視されます。
使用例
基本的な使い方
<?php
$fruits = array(
"a" => "apple",
"b" => "banana",
"c" => "cherry"
);
$values = array_values($fruits);
print_r($values);
?>
この例では、連想配列 $fruits の値だけを新しい配列 $values に取得します。出力はキーが0,1,2の数値配列になります。
数値添字の配列から値を再取得する場合
<?php
$colors = ["red", "green", "blue"];
$newColors = array_values($colors);
print_r($newColors);
?>
数値添字の配列に対して使った場合は、もともとキーが連続しているためほぼ元の配列と同じ結果が返ります。
キーが飛んでいる配列の場合
<?php
$array = [2 => "x", 4 => "y", 6 => "z"];
$values = array_values($array);
print_r($values);
?>
キーが連続していない場合でも、array_values は値を0から始まる連続した添字で取り出します。
関連する関数
array_keys– 配列のキーだけを取得する関数array_map– 配列の各要素に対してコールバック関数を適用する関数array_filter– 条件に合う配列の要素だけを抽出する関数
まとめ
array_values は、配列のキーを気にせず値だけを取り出したいときに使う非常に便利な関数です。特に連想配列から数値インデックスの配列が必要な場合に役立ちます。キーの順序をリセットして配列を扱いやすくしたいときに、実務でもよく使われる基本的な配列操作のひとつです。
