【php】array_keys()使い方

プログラミング

概要

配列のキーすべて、あるいはその一部を返す

実際のコードを見て、挙動を理解しよう!

<?php
    $array = array("a", 0, "0", 1, "1", true, false);

    // ①第一引数のみ指定
    var_dump(array_keys($array));
    
    // ②第二引数に「1」を指定
    var_dump(array_keys($array, 1));

    //③第三引数に"true"を指定
    var_dump(array_keys($array, "1", true));

    //④第三引数に"false"を指定
    var_dump(array_keys($array, "1", false));
?>
出力結果
①結果
array(7) {
  [0]=> int(0), [1]=> int(1), [2]=> int(2), [3]=> int(3),
  [4]=> int(4), [5]=> int(5), [6]=> int(6)
}

②結果
array(3) {
  [0]=> int(3), [1]=> int(4), [2]=> int(5)
}

③結果
array(1) {
  [0]=> int(4)
}

④結果
array(3) {
  [0]=> int(3), [1]=> int(4), [2]=> int(5)
}

※PHP Version:8.1.9

array_keys()は、引数を指定しなければ、①のようにキーの値を取得します。

②では、第二引数に「1」という値を指定し、「1」と一致するものがあれば、キーの値を返します。

数値や文字列の”1″であっても、値を返していることが分かります。

③では型のチェックも行うことにより、数値の「1」しか返していないことが分かります。

第三引数に、trueを指定することにより、厳密な型チェックを行います。

④は、第三引数を”false”にすると、厳密な型チェックをしないので、②と同じ結果が得られます。

第三引数を”true”にすることのメリット

比較したい値の型と別の型が入ってくることがななくなります。

それによって、開発やphpのバージョンアップを行う際に、予期せぬエラーを防ぐことができます。

参考記事

PHP: array_keys - Manual
PHP is a popular general-purpose scripting language that powers everything from your blog to the most popular websites in the world.

ビルトイン関数は、公式を見た方が正確。

※ビルトイン関数…組み込み関数のこと(簡単に言うと、既にphp側で用意されている関数)

コメント

タイトルとURLをコピーしました