php 連想配列からキーのみを取得する

  • 作成日 2021.02.16
  • php
php 連想配列からキーのみを取得する

phpで、array_keysを使用して、連想配列からキーのみを取得するサンプルコードを記述してます。phpのバージョンは8.0です。

環境

  • OS  CentOS Linux release 8.0.1905 (Core)
  • php 8.0.0
  • nginx 1.14.1

array_keys使い方

array_keysを使用すれば、連想配列からキーのみを取得することが可能です。

array_keys(配列);

以下は、連想配列からキーのみを取得するサンプルコードとなります。

<?php

$arr = ["a" => 1, "b" => 2, "c" => 3];

$result = array_keys($arr);

print_r($result);

実行結果

Array
(
    [0] => a
    [1] => b
    [2] => c
)

値を指定してキーを取得することも可能です。

<?php

$arr = ["a" => 3, "b" => 2, "c" => 3];

$result = array_keys($arr,3);

print_r($result);

実行結果

Array
(
    [0] => a
    [1] => c
)

ただし、「==」で比較しているので、数値の「1」と文字列の「1」は同じと見なされます。

<?php

$arr = ["a" => 1, "b" => "1", "c" => 3];

$result = array_keys($arr,1);

print_r($result);

実行結果

Array
(
    [0] => a
    [1] => b
)

第三引数に「True」を指定することで、厳密「===」に比較することが可能です。

<?php

$arr = ["a" => 1, "b" => "1", "c" => 3];

$result = array_keys($arr,1,true);

print_r($result);

実行結果

Array
(
    [0] => a
)