2017-03-21 1 views
0

Ich habe ein Array wie folgt aus:Kopieren Subarrays durch ein Kind Schlüssel aus einem multidemensional Array in PHP passend

array(
    array(
    'id'   => 'a', 
    'other'  => 'abc: ', 
    'subarray' => array(
     'somekey' => 'abc', 
    ), 
    'subarray2' => array(
     'somekey' => 'abc', 
    ), 
), 
    array(
    'id'   => 'b', 
    'other'  => 'abc: ', 
    'subarray' => array(
     'somekey' => 'abc', 
    ), 
), 
    array(
    'id'   => 'c', 
    'other'  => 'abc: ', 
    'subarray' => array(
     'somekey' => 'abc', 
    ), 
), 
) 

Ich brauche jedes Subarray in ein neues Array kopieren zu können, durch die ID übereinstimmen. Also, sagen wir, ich muss ID 'b' übereinstimmen.

Antwort

1

Der Code, den ich am Ende mit war eine foreach-Schleife der Array Schleife und meine ID finden, dann den Schlüssel aus dem übergeordneten Array mit den Werten des Sub-Array zu kopieren:

$value = 'b' 
    foreach ($this->fields as $fields_array => $sub_array) { 
    if ($sub_array['id'] == $value) { 
     $new_array = $this->fields[$fields_array]; 
     //do something with new array 
    } 
    } 
+0

Was ist das - Antwort oder Ergänzung zu einer Frage? –

+0

Es ist eine Antwort, aber ich würde gerne wissen, ob es einen besseren Weg als eine foreach-Schleife gibt. – Michelle

Verwandte Themen