Zum Inhalt springen

Die PHP-Funktion array_column() verstehen

Die PHP-Funktion array_column() ist ein praktisches Werkzeug, um Werte aus Arrays zu extrahieren und in neue Arrays umzuwandeln. Sie wird häufig bei mehrdimensionalen Arrays verwendet und kann den Prozess der Datenbearbeitung vereinfachen. In diesem Artikel gehen wir auf die Einzelheiten von array_column() ein und zeigen dir, wie du sie in deinen eigenen PHP-Projekten verwendest.

Was ist die Funktion array_column()?

Die Funktion array_column() ist eine integrierte PHP-Funktion, mit der Werte aus einem Array extrahiert und als neues Array zurückgegeben werden. Sie nimmt zwei erforderliche Parameter entgegen: das Array, aus dem du Werte extrahieren möchtest, und den Schlüssel (oder die Spalte), den bzw. die du extrahieren möchtest. Die Funktion gibt ein neues Array zurück, das nur die Werte aus der angegebenen Spalte enthält.

Hier ist die grundlegende Syntax der Funktion array_column():

PHP array_column function syntax

php
array_column(array, column_key, [index_key]);
  • array: Das ist das Array, aus dem du Werte extrahieren möchtest.
  • column_key: Das ist der Schlüssel (oder die Spalte), den bzw. die du extrahieren möchtest.
  • index_key (optional): Das ist der Schlüssel, den du als Index (oder Schlüssel) des zurückgegebenen Arrays verwenden möchtest.

Wie man die Funktion array_column() verwendet

Die Verwendung der Funktion array_column() ist ganz einfach. Du musst lediglich ein Array und den Schlüssel übergeben, den du extrahieren möchtest. Hier ist ein Beispiel, das zeigt, wie man array_column() verwendet:

PHP example of array_column function

php
<?php

$data = [
    [
        'id' => 1,
        'name' => 'John',
        'age' => 30,
    ],
    [
        'id' => 2,
        'name' => 'Jane',
        'age' => 25,
    ],
    [
        'id' => 3,
        'name' => 'Jim',
        'age' => 35,
    ],
];

$names = array_column($data, 'name');

print_r($names);

?>

Die Ausgabe dieses Codes wäre:


console
Array
(
  [0] => John
  [1] => Jane
  [2] => Jim
)

In diesem Beispiel hat die Funktion array_column() die Werte aus der Spalte name extrahiert und als neues Array zurückgegeben.

Verwendung des Parameters index_key

Der Parameter index_key ermöglicht es dir, einen Schlüssel anzugeben, der als Index des zurückgegebenen Arrays verwendet wird. Hier ist ein Beispiel, das zeigt, wie man den Parameter index_key verwendet:

Example of PHP function array_column with more arguments

php
<?php

$data = [
    [
        'id' => 1,
        'name' => 'John',
        'age' => 30,
    ],
    [
        'id' => 2,
        'name' => 'Jane',
        'age' => 25,
    ],
    [
        'id' => 3,
        'name' => 'Jim',
        'age' => 35,
    ],
];

$names = array_column($data, 'name', 'id');

print_r($names);

?>

Die Ausgabe dieses Codes wäre:


console
Array
(
  [1] => John
  [2] => Jane
  [3] => Jim
)

In diesem Beispiel hat die Funktion array_column() die Werte aus der Spalte name extrahiert und die Spalte id als Index des zurückgegebenen Arrays verwendet.

Anwendungsfälle für array_column()

Die Funktion array_column() kann in verschiedenen Situationen verwendet werden, in denen du Werte aus Arrays extrahieren und als neues Array zurückgeben musst. Hier sind einige häufige Anwendungsfälle:

  • Werte aus mehrdimensionalen Arrays extrahieren, um eine einfache Liste zu erstellen
  • Ein assoziatives Array aus einem mehrdimensionalen Array erstellen
  • Ein mehrdimensionales Array in ein eindimensionales Array umwandeln, um es in einer Dropdown-Liste oder einem anderen Formularelement zu verwenden

Fazit

Zusammenfassend ist die Funktion array_column() ein leistungsstarkes Werkzeug, um Werte aus Arrays zu extrahieren und in neue Arrays umzuwandeln. Egal, ob du mit mehrdimensionalen Arrays arbeitest oder einfach nur bestimmte Werte extrahieren musst, array_column() kann deinen Code vereinfachen und dir helfen, die gewünschten Ergebnisse zu erhalten.

Practice

What is the function of the array_column() function in PHP?

Finden Sie das nützlich?

Dual-run-Vorschau — vergleichen Sie mit den Symfony-Routen live.