Heim >Backend-Entwicklung >PHP-Tutorial >Zweidimensionales Array wählt nur Zielfelder aus

Zweidimensionales Array wählt nur Zielfelder aus

WBOY
WBOYOriginal
2016-08-10 09:07:321043Durchsuche

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:
Zweidimensionales Array wählt nur Zielfelder aus

Antwortinhalt:

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:
Zweidimensionales Array wählt nur Zielfelder aus

Stellen Sie die Frage: Möchten Sie das gewünschte Feld aus dem zweistelligen Array extrahieren? Sie müssen es nicht zweimal tunforeachAh

<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.

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