php 連想配列のキーを小文字・大文字に変換する

  • 作成日 2020.12.27
  • php
php 連想配列のキーを小文字・大文字に変換する

phpで、array_change_key_caseを使用して、連想配列のキーを小文字・大文字に変換するサンプルコードを記述してます。phpのバージョンは8.0です。

環境

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

array_change_key_case使い方

array_change_key_caseを使用すれば、連想配列のキーを小文字に変換することが可能です。

array_change_key_case(配列);
// デフォルトは 大文字 → 小文字

array_change_key_case($arr,CASE_UPPER);
// 小文字 → 大文字

array_change_key_case($arr,CASE_LOWER);
// 大文字 → 小文字

以下は、連想配列のキーを小文字に変換するサンプルコードとなります。

<?php

$arr =  [
    "Aaa" => "aaa",
    "BbB" => "bbb",
    "CCc" => "ccc"
];;

$result = array_change_key_case($arr);

// 結果
print_r($result);

実行結果

Array
(
    [aaa] => aaa
    [bbb] => bbb
    [ccc] => ccc
)

値の方は、小文字には変換されません。

<?php

$arr =  [
    "Aaa" => "aAa",
    "BbB" => "bBb",
    "CCc" => "cCc"
];;

$result = array_change_key_case($arr);

// 結果
print_r($result);

実行結果

Array
(
    [aaa] => aAa
    [bbb] => bBb
    [ccc] => cCc
)

また全角文字は、変換されません。

<?php

$arr =  [
    "AAaa" => "aAa",
    "BBbB" => "bBb",
    "CCCc" => "cCc"
];;

$result = array_change_key_case($arr);

// 結果
print_r($result);

実行結果

Array
(
    [Aaaa] => aAa
    [Bbbb] => bBb
    [Cccc] => cCc
)

大文字に変換する場合は以下となります。

<?php

$arr =  [
    "Aaa" => "aaa",
    "BbB" => "bbb",
    "CCc" => "ccc"
];;

$result = array_change_key_case($arr,CASE_UPPER);

// 結果
print_r($result);

実行結果

Array
(
    [AAA] => aaa
    [BBB] => bbb
    [CCC] => ccc
)