ホームページ  >  記事  >  バックエンド開発  >  PHP で 2 次元配列のキーを変更する方法について話しましょう

PHP で 2 次元配列のキーを変更する方法について話しましょう

PHPz
PHPzオリジナル
2023-04-20 09:10:00675ブラウズ

PHP の 2 次元配列は、複数の 1 次元配列で構成される配列であり、各 1 次元配列には複数の要素が含まれます。このような配列を処理する場合、ビジネス ニーズに合わせて 2 次元配列内のキーを変更する必要がある場合があります。この記事では、PHPで2次元配列のキーを変更する方法を紹介します。

1. すべてのサブ配列の指定されたキーを変更する

場合によっては、2 次元配列内のすべてのサブ配列の指定されたキーを新しいキー名に変更する必要があります。 array_map 関数を使用してこれを実現できます。 array_map 関数は、配列の各要素にカスタム関数を適用できます。

以下はコード例です:

function changeKey($arr, $oldkey, $newkey){
    if(!is_array($arr)){
        return $arr;
    }
    $result = array();
    foreach($arr as $key=>$val){
        if(is_array($val)){
            $result[$key] = changeKey($val, $oldkey, $newkey);
        } else {
            $result[$key] = $val;
            if($key == $oldkey){
                $result[$newkey] = $val;
                unset($result[$oldkey]);
            }
        }
    }
    return $result;
}

$oldArray = array(
    array('id'=>1, 'name'=>'php', 'type'=>'backend'),
    array('id'=>2, 'name'=>'js', 'type'=>'frontend')
);

$newArray = array_map(function($arr){
    return changeKey($arr, 'type', 'category');
}, $oldArray);

print_r($newArray);

上記のコードは、$oldArray 内のすべてのサブ配列の 'type' キーを 'category' キーに変更します。出力結果は次のとおりです。

Array
(
    [0] => Array
        (
            [id] => 1
            [name] => php
            [category] => backend
        )

    [1] => Array
        (
            [id] => 2
            [name] => js
            [category] => frontend
        )

)

2. 指定されたサブ配列の指定されたキーを変更します。

場合によっては、ファイル内の特定のサブ配列の指定されたキーのみを変更する必要があります。 2 次元配列。サブ配列を直接変更できます。実現する配列。以下にコード例を示します。

$oldArray = array(
    array('id'=>1, 'name'=>'php', 'type'=>'backend'),
    array('id'=>2, 'name'=>'js', 'type'=>'frontend')
);

foreach($oldArray as &$arr){
    if($arr['id'] == 1){
        $arr['type'] = 'server side';
    }
}

print_r($oldArray);

上記のコードは、$oldArray 内の $id 1 のサブ配列の「type」キーを「サーバー側」に変更します。出力結果は以下の通り:

Array
(
    [0] => Array
        (
            [id] => 1
            [name] => php
            [type] => server side
        )

    [1] => Array
        (
            [id] => 2
            [name] => js
            [type] => frontend
        )

)

3. 結論

PHP の二次元配列は PHP で広く使われているデータ構造の 1 つです。 PHPでは二次元配列を使って簡単にデータ加工を行うことができます。この記事では、PHP の 2 次元配列のキーを変更する 2 つの方法を例を挙げて紹介します。

以上がPHP で 2 次元配列のキーを変更する方法について話しましょうの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。