Heim  >  Artikel  >  Backend-Entwicklung  >  PHP gibt alle Schlüssel des Arrays zurück, um ein Array zu bilden

PHP gibt alle Schlüssel des Arrays zurück, um ein Array zu bilden

王林
王林nach vorne
2024-03-21 10:01:29295Durchsuche

Der PHP-Editor Strawberry stellt Ihnen heute eine praktische Technik vor: wie Sie alle Schlüssel eines Arrays zu einem neuen Array kombinieren. In PHP können wir die Funktion array_keys() verwenden, um diese Funktion zu erreichen. Diese Funktion kann ein neues Array zurückgeben, das alle Schlüssel des ursprünglichen Arrays enthält, sodass wir die Schlüssel des Arrays einfach bedienen und verarbeiten können. Schauen wir uns als Nächstes die spezifische Implementierungsmethode an!

PHP Holen Sie sich alle Schlüssel des Arrays:

Übersicht:

php bietet mehrere Methoden, um alle Schlüssel im Array abzurufen und ein neues Array zu bilden. In diesem Artikel werden diese Methoden und ihre Nuancen untersucht, um Ihnen dabei zu helfen, eine fundierte Entscheidung basierend auf Ihren spezifischen Bedürfnissen zu treffen.

Methode:

1. array_keys()

array_keys() Die Funktion gibt ein Array aller Schlüssel im Array zurück. Es akzeptiert ein Array als Parameter und gibt ein Array zurück, das die Schlüsselwerte enthält.

$fruits = ["apple", "banana", "orange"];
$keys = array_keys($fruits); // [0, 1, 2]

2. Schlüssel()

keys() ist ein Alias ​​der keys()array_keys()-Funktion mit demselben Verhalten und derselben Verwendung.

3. array_map() + array_keys()

Diese Methode verwendet die Funktion array_map(), um array_map() 函数将 array_keys() auf jeden Wert im Array anzuwenden. Das Ergebnis ist ein neues Array, das alle Schlüssel enthält.

$keys = array_map("array_keys", $fruits); // [0, 1, 2]

4. array_column()

Mit der Funktion

array_column() können die Werte einer bestimmten Spalte aus einem mehrdimensionalen Array extrahiert werden. Es kann auch als alternative Methode zum Extrahieren von Schlüsseln verwendet werden.

$data = [
["id" => 1, "name" => "John"],
["id" => 2, "name" => "Mary"],
];
$keys = array_column($data, "id"); // [1, 2]

5. foreach-Schleife

foreach 循环可遍历数组中的每个元素,并通过使用键字 key Zugangsschlüssel.

$keys = [];
foreach ($fruits as $key => $value) {
$keys[] = $key;
}

6. IteratorAggregate-Schnittstelle

Implementiert die IteratorAggregate 接口的对象可以通过迭代器访问键。可以使用 getIterator()-Methode, um einen Iterator zu erhalten und Schlüssel daraus zu erhalten.

class MyArray implements IteratorAggregate {
public function getIterator() {
return new ArrayIterator($this->data);
}
}
$arr = new MyArray();
$keys = [];
foreach ($arr as $key => $value) {
$keys[] = $key;
}

Leistungsvergleich:

Hier ist ein grober Leistungsvergleich verschiedener Methoden:

  • array_keys(): am schnellsten
  • array_map() + array_keys(): schneller
  • keys(): Gleich wie keys(): 与 array_keys()
  • array_column(): Effizient für mehrdimensionale Arrays
  • foreach Schleife: schlechte Leistung
  • IteratorAggregate: Hohe Komplexität

Auswahlmethode:

Die Wahl der Methode, die Ihren Bedürfnissen am besten entspricht, hängt von folgenden Faktoren ab:

  • Struktur des Arrays
  • Anzahl der zu verarbeitenden Arrays
  • Leistungspriorität

Für einfache und kleine Arrays sind array_keys()array_map() + array_keys() 是最佳选择。对于大型和多维数组,array_column() 可能更合适。对于复杂的对象,IteratorAggregate oder

die beste Wahl. Für große und mehrdimensionale Arrays ist 🎜 möglicherweise besser geeignet. Für komplexe Objekte ist 🎜 eine praktikable Option. 🎜

Das obige ist der detaillierte Inhalt vonPHP gibt alle Schlüssel des Arrays zurück, um ein Array zu bilden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:lsjlt.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen