Heim  >  Artikel  >  Backend-Entwicklung  >  So entfernen Sie mehrere Spalten aus einem zweidimensionalen Array in PHP

So entfernen Sie mehrere Spalten aus einem zweidimensionalen Array in PHP

PHPz
PHPzOriginal
2023-04-20 10:15:171017Durchsuche

In der PHP-Programmierung sind zweidimensionale Arrays einer der am häufigsten vorkommenden Datentypen. Zweidimensionale Arrays bestehen aus mehreren eindimensionalen Arrays, die die mehrdimensionale Datenspeicherung und -verarbeitung erleichtern können. Bei der tatsächlichen Programmierung müssen wir häufig mehrere Spalten aus einem zweidimensionalen Array herausnehmen und diese bearbeiten oder ausgeben. In diesem Artikel werden verschiedene Methoden zum Extrahieren mehrerer Spalten aus einem zweidimensionalen Array vorgestellt.

1. Schleifendurchquerung verwenden

Die einfachste Methode besteht darin, eine Schleife zu verwenden, um das zweidimensionale Array zu durchlaufen und die erforderlichen Spalten zu entfernen. Das Folgende ist ein Beispielcode:

$array = array(
  array('id'=>1, 'name'=>'张三', 'age'=>18, 'address'=>'北京'),
  array('id'=>2, 'name'=>'李四', 'age'=>20, 'address'=>'上海'),
  array('id'=>3, 'name'=>'王五', 'age'=>22, 'address'=>'广州'),
);

$columns = array('name', 'age');

foreach($array as $key => $item){
  foreach($columns as $col){
    echo $item[$col]."  ";
  }
  echo "<br/>";
}

Hier definieren wir ein zweidimensionales Array $array, das Informationen wie die ID, den Namen, das Alter und die Adresse jeder Person enthält. Wir müssen die Namens- und Altersspalteninformationen daraus extrahieren. Verwenden Sie zwei foreach-Schleifen, um das Array und die auszugebenden Spalten zu durchlaufen. Über $item[$col] können Sie die entsprechenden Informationen jeder Person abrufen und diese dann direkt ausgeben.

2. Verwenden Sie die Funktion array_column

Die Funktion array_column von PHP kann eine bestimmte Spalte direkt aus einem zweidimensionalen Array herausnehmen, ohne selbst eine Schleife schreiben zu müssen. Das Folgende ist ein Beispielcode:

$array = array(
  array('id'=>1, 'name'=>'张三', 'age'=>18, 'address'=>'北京'),
  array('id'=>2, 'name'=>'李四', 'age'=>20, 'address'=>'上海'),
  array('id'=>3, 'name'=>'王五', 'age'=>22, 'address'=>'广州'),
);

$columns = array('name', 'age');

$result = array_column($array, $columns[0]);

for($i=1; $i<count($columns); $i++){
  $temp = array_column($array, $columns[$i]);
  $result = array_map(null, $result, $temp);
}

foreach($result as $value){
  echo $value[0]." ".$value[1]."<br/>";
}

Hier definieren wir auch ein zweidimensionales Array $array und die auszugebenden Spalten $columns. Durch Aufrufen der Funktion array_column können Sie die Werte aller Namensspalten direkt aus $array abrufen und dann die Funktion array_map verwenden, um die Werte mehrerer Spalten in einem zweidimensionalen Array $result zusammenzuführen. Geben Sie abschließend jede Datenzeile in $result über die foreach-Schleife aus.

3. Verwenden Sie die Funktion array_reduce.

Eine weitere Implementierungsmethode ist die Verwendung der Funktion array_reduce von PHP. Die Funktion array_reduce kombiniert ein Array zu einem Wert und wird häufig für Operationen wie das Summieren von Arrays oder das Berechnen des Maximalwerts verwendet. Das Folgende ist ein Beispielcode:

$array = array(
  array('id'=>1, 'name'=>'张三', 'age'=>18, 'address'=>'北京'),
  array('id'=>2, 'name'=>'李四', 'age'=>20, 'address'=>'上海'),
  array('id'=>3, 'name'=>'王五', 'age'=>22, 'address'=>'广州'),
);

$result = array_reduce($array, function($carry, $item){
  return array($carry[0]." ".$item['name'], $carry[1]." ".$item['age']);
}, array('',''));

echo $result[0]."<br/>";
echo $result[1]."<br/>";

Hier definieren wir auch ein zweidimensionales Array $array. Durch Aufrufen der Funktion array_reduce werden die Namens- und Altersinformationen in jedem eindimensionalen Array $item in einem eindimensionalen Array $carry zusammengeführt. Geben Sie abschließend das zusammengeführte Ergebnis aus.

Zusammenfassung:

Alle oben genannten drei Methoden können die angegebene Spalte aus dem zweidimensionalen Array entfernen und verarbeiten oder ausgeben. Unter diesen ist die Schleifendurchquerung die gebräuchlichste Methode, und die Funktionen array_column und array_reduce sind prägnanter und fortgeschrittener. Bei der eigentlichen Programmierung können Sie die am besten geeignete Methode auswählen, um entsprechend den spezifischen Anforderungen zu arbeiten.

Das obige ist der detaillierte Inhalt vonSo entfernen Sie mehrere Spalten aus einem zweidimensionalen Array in PHP. 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