Heim >Backend-Entwicklung >PHP-Tutorial >Zweidimensionales Array wählt nur Zielfelder aus
Ich habe jetzt mehr als 1.000 Datenelemente im zweidimensionalen Array und die Felder in jedem Datenelement sind redundant. Jetzt benötige ich nur noch die 3 Zielfelder, die im roten Feld dargestellt sind jedes Datenelement. Okay, es wird nichts anderes benötigt.
Ich weiß jetzt, dass ich dafür eine doppelte foreach-Schleife verwenden muss, aber ich konnte es nicht tun, danke Sie
Das Bild sieht wie folgt aus:
Ich habe jetzt mehr als 1.000 Datenelemente im zweidimensionalen Array und die Felder in jedem Datenelement sind redundant. Jetzt benötige ich nur noch die 3 Zielfelder, die im roten Feld dargestellt sind jedes Datenelement. Okay, es wird nichts anderes benötigt.
Ich weiß jetzt, dass ich dafür eine doppelte foreach-Schleife verwenden muss, aber ich konnte es nicht tun, danke Sie
Das Bild sieht wie folgt aus:
Stellen Sie die Frage: Möchten Sie das gewünschte Feld aus dem zweistelligen Array extrahieren? Sie müssen es nicht zweimal tunforeach
Ah
<code class="php"><?php //---构造测试数据 --- $arry = []; for ($i=0; $i < 1000; $i++) { $arry[] = [ 'platform_good_id' => mt_rand(1, 2000), 'good_name' => 'goodname' . $i, 'xxxxxxx' => 'xxxxx', 'wadadad' => 'adwawdadwad', 'remake' => '' ]; } //---构造测试数据 --- $data = []; foreach ($arry as $key => $value) { $data[] = [ 'platform_good_id' => $value['platform_good_id'], 'good_name' => $value['good_name'], 'remake' => $value['remake'], ]; } var_dump($data); </code>
lautet wie folgt:
<code><!DOCTYPE html> <html> <body> <?php $arr = array( "a"=>array("a"=>"a","b"=>"b","c"=>"c","d"=>"d","e"=>"e"), "b"=>array("a"=>"a","b"=>"b","c"=>"c","d"=>"d","e"=>"e"), "c"=>array("a"=>"a","b"=>"b","c"=>"c","d"=>"d","e"=>"e"), "d"=>array("a"=>"a","b"=>"b","c"=>"c","d"=>"d","e"=>"e"), "e"=>array("a"=>"a","b"=>"b","c"=>"c","d"=>"d","e"=>"e")); $result = array(); foreach ($arr as $k => $v){ $result[$k] = array(); foreach($v as $key => $value){ if($key === "b" || $key === "d" || $key === "e"){ $result[$k][$key] = $value; } } } print_r($arr); print("<br/>"); print_r($result); ?> </body> </html></code>
Der obige Code extrahiert die Elemente, deren Schlüsselwert b d e
ist, und bildet dann ein neues Array.