Aktueller Standort: Startseite> Neueste Artikel> PHP-Array-Tarifverkehrsmethode und beste Algorithmusauswahl

PHP-Array-Tarifverkehrsmethode und beste Algorithmusauswahl

M66 2025-07-11

PHP-Array-Tarifverkehrsmethode und beste Algorithmusauswahl

In PHP sind Arrays eine geordnete und schlüssige Datenstruktur. Der Schlüsselwert-Swap bezieht sich auf die Tauschschlüssel und Werte in einem Array, um ein neues Array zu erstellen. Abhängig vom Datentyp des Array-Elements können verschiedene Algorithmen ausgewählt werden, um den Schlüsselvertausch zu implementieren.

Algorithmusauswahl

Datentyp Algorithmus
Assoziatives Array (Schlüssel ist eine Zeichenfolge oder eine Ganzzahl) Array_flip ()
Normales Array (Schlüssel ist eine Ganzzahl) asort () + array_keys ()
Objektarray Array_map () + benutzerdefinierte Rückruffunktion

Praktische Fälle

Assoziatives Array

Wenn die Schlüssel eines Arrays oder Ganzzahlen sind, kann die Funktion array_flip () verwendet werden, um den Schlüsselwertaustausch zu implementieren.

 $arr = ['name' => 'John', 'age' => 30];
$flippedArr = array_flip($arr);
print_r($flippedArr);

Ausgangsergebnis:

 Array
(
    [John] => name
    [30] => age
)

Normales Array

Verwenden Sie für ein normales Array, in dem der Schlüssel eine Ganzzahl ist, zuerst ASORT (), um das Array zu sortieren, und dann Array_keys (), um den neuen Schlüssel zu erhalten.

 $arr = [1, 2, 3, 4, 5];
asort($arr);
$flippedArr = array_keys($arr);
print_r($flippedArr);

Ausgangsergebnis:

 Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
)

Objektarray

Für Arrays, die Objekte enthalten, können Sie Array_Map () mit einer benutzerdefinierten Rückruffunktion verwenden, um den Schlüsselwerttausch zu implementieren.

 class Person {
    public $name;
    public $age;
}

$person1 = new Person();
$person1->name = 'John';
$person1->age = 30;

$person2 = new Person();
$person2->name = 'Mary';
$person2->age = 25;

$arr = [$person1, $person2];
$flippedArr = array_map(function ($obj) {
    return [$obj->name, $obj];
}, $arr);
print_r($flippedArr);

Ausgangsergebnis:

 Array
(
    [John] => Person Object
    (
        [name] => John
        [age] => 30
    )
    [Mary] => Person Object
    (
        [name] => Mary
        [age] => 25
    )
)

Die oben genannten sind mehrere häufige Methoden und praktische Fälle von Schlüsselwertaustausch in PHP-Arrays. Die Auswahl des geeigneten Algorithmus gemäß verschiedenen Datentypen kann die Effizienz und Lesbarkeit des Programms verbessern.