„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie extrahieren Sie Eigenschaftsspalten aus Objektarrays in PHP?

Wie extrahieren Sie Eigenschaftsspalten aus Objektarrays in PHP?

Veröffentlicht am 14.11.2024
Durchsuche:952

How Do You Extract Property Columns from Object Arrays in PHP?

Eigenschaftsspalten aus Objektarrays extrahieren

Um eine Eigenschaftsspalte aus einem Array von Objekten in einer einzigen Zeile zu extrahieren, können wir PHPs verwenden array_column()-Funktion, eingeführt in PHP 7.0.

$cats = Array(
    (object) ['id' => 15],
    (object) ['id' => 18],
    (object) ['id' => 23]
);

$idCats = array_column($cats, 'id');

Die Funktion array_column() benötigt zwei Parameter:

  1. Das Array von Objekten, aus denen extrahiert werden soll.
  2. Der zu extrahierende Eigenschaftsname.

In diesem Fall übergeben wir das Array $cats als ersten Parameter und „id“ als zweiten Parameter, um die IDs der Katzen zu extrahieren.

Wenn Sie PHP-Versionen vor 7.0 verwenden, können Sie dies mit array_walk() und create_function() wie folgt implementieren:

$idCats = [];
array_walk($cats, function ($cat) {
    $idCats[] = $cat->id;
});

Die Verwendung von array_column() ist jedoch ein prägnanterer und effizienterer Ansatz, insbesondere in PHP 7.0 und späteren Versionen.

Freigabeerklärung Dieser Artikel wird unter folgender Adresse abgedruckt: 1729385956 Bei Verstößen wenden Sie sich bitte an [email protected], um ihn zu löschen
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3