In PHP werden zweidimensionale Arrays normalerweise als Sammlung zusammengehöriger Daten gespeichert. Für diese Art von Datenstruktur können Sie jedes Array-Element durchlaufen und dann den Array-Indexoperator verwenden, um auf den Wert jedes Elements zuzugreifen. Wenn Sie nur auf ein bestimmtes Feld zugreifen müssen, können Sie die Funktion array_column() verwenden oder eine Traversal-Funktion anpassen.
1. Verwenden Sie die Funktion array_column(). Die Funktion array_column() kann den Wert eines Felds im angegebenen Array abrufen und als neues Array zurückgeben. Die Parameterliste lautet wie folgt:
Parameterbeschreibung:
// 二维数组 $data = array( array('id'=>1, 'name'=>'Alice', 'age'=>20), array('id'=>2, 'name'=>'Bob', 'age'=>23), array('id'=>3, 'name'=>'Charlie', 'age'=>25), ); // 获取名字字段值 $names = array_column($data, 'name'); print_r($names); // 输出 ['Alice', 'Bob', 'Charlie'] // 获取id和名字作为键的新数组 $new_data = array_column($data, 'age', 'name'); print_r($new_data); //输出 ['Alice'=>20, 'Bob'=>23, 'Charlie'=>25]
Wenn das abzurufende Feld keine feste Position hat, oder Sie müssen komplexe Vorgänge anpassen. Sie können dazu eine Durchlauffunktion anpassen. Das Folgende ist ein Beispielcode für eine Traversal-Funktion:
// 自定义一个遍历函数 function get_field_from_array($data,$field){ $result = array(); foreach($data as $item){ if(array_key_exists($field,$item)){ $result[] = $item[$field]; } } return $result; } // 二维数组 $data = array( array('id'=>1, 'name'=>'Alice', 'age'=>20), array('id'=>2, 'name'=>'Bob', 'age'=>23), array('id'=>3, 'name'=>'Charlie', 'age'=>25), ); // 获取名字字段值 $names = get_field_from_array($data,'name'); print_r($names); //输出 ['Alice', 'Bob', 'Charlie'] // 获取id字段值 $ids = get_field_from_array($data,'id'); print_r($ids); //输出 [1, 2, 3]
Das obige ist der detaillierte Inhalt vonSo erhalten Sie ein Feld eines zweidimensionalen Arrays im Backend-PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!