Heim  >  Artikel  >  Backend-Entwicklung  >  Lassen Sie uns darüber sprechen, wie Sie die Schlüssel in einem zweidimensionalen Array in PHP ändern

Lassen Sie uns darüber sprechen, wie Sie die Schlüssel in einem zweidimensionalen Array in PHP ändern

PHPz
PHPzOriginal
2023-04-20 09:10:00670Durchsuche

Das zweidimensionale PHP-Array ist ein Array, das aus mehreren eindimensionalen Arrays besteht, wobei jedes eindimensionale Array mehrere Elemente enthält. Bei der Verarbeitung eines solchen Arrays müssen wir manchmal die Schlüssel im zweidimensionalen Array ändern, um unseren Geschäftsanforderungen gerecht zu werden. In diesem Artikel wird erläutert, wie Sie die Schlüssel in einem zweidimensionalen Array in PHP ändern.

1. Ändern Sie die angegebenen Schlüssel aller Unterarrays

Manchmal müssen wir die angegebenen Schlüssel aller Unterarrays in einem zweidimensionalen Array in einen neuen Schlüsselnamen ändern, was mit der Funktion array_map erreicht werden kann. Die Funktion array_map kann eine benutzerdefinierte Funktion auf jedes Element des Arrays anwenden.

Das Folgende ist ein Codebeispiel:

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);

Der obige Code ändert den Schlüssel „Typ“ in allen Unterarrays in $oldArray in den Schlüssel „Kategorie“. Das Ausgabeergebnis lautet wie folgt:

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

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

)

2. Ändern Sie den angegebenen Schlüssel des angegebenen Unterarrays

Manchmal müssen wir nur den angegebenen Schlüssel eines bestimmten Unterarrays im zweidimensionalen Array ändern, was möglich ist Dies wird durch direktes Ändern des Unterarrays erreicht. Das Folgende ist ein Codebeispiel:

$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);

Der obige Code ändert den „Typ“-Schlüssel des Subarrays mit $id 1 in $oldArray in „serverseitig“. Das Ausgabeergebnis lautet wie folgt:

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

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

)

3. Fazit

Das zweidimensionale PHP-Array ist eine der in PHP weit verbreiteten Datenstrukturen. Die Beherrschung der Methode zum Ändern der Schlüssel im zweidimensionalen PHP-Array kann die Datenverarbeitung erleichtern. Dieser Artikel stellt anhand von Beispielen zwei Methoden zum Ändern der Schlüssel in einem zweidimensionalen Array in PHP vor. Ich hoffe, dass er für alle hilfreich ist.

Das obige ist der detaillierte Inhalt vonLassen Sie uns darüber sprechen, wie Sie die Schlüssel in einem zweidimensionalen Array in PHP ändern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn