2016-04-02 3 views
-1

Hallo Ich habe ein Array und ich habe die ID zu dem Schlüssel jedes Array hinzugefügt, aber ich möchte, dass diese ID auch zum Array-Wert hinzugefügt werden.Wie füge ich den Schlüssel eines Arrays zum Array-Wert in PHP hinzu?

Der Code, der dem Array die Schlüssel und den Wert hinzufügt.

foreach ($data as $id => $name) { 
      $arr[$id] = Category::where('parent_category_id', $id)->lists('id'); 
     } 

jetzt sieht das Array wie diese

Array 
(
    [427] => Illuminate\Support\Collection Object 
     (
      [items:protected] => Array 
       (
        [0] => 277 
        [1] => 279 
        [2] => 426 
        [3] => 428 
        [4] => 429 
        [5] => 430 
        [6] => 431 
        [7] => 432 
        [8] => 433 
        [9] => 434 
       ) 

     ) 

    [280] => Illuminate\Support\Collection Object 
     (
      [items:protected] => Array 
       (
        [0] => 281 
        [1] => 282 
        [2] => 435 
        [3] => 436 
        [4] => 437 
       ) 

     ) 

    [283] => Illuminate\Support\Collection Object 
     (
      [items:protected] => Array 
       (
        [0] => 284 
        [1] => 285 
        [2] => 286 
       ) 

     ) 

, was ich will, um wirklich zu erreichen ist, dass ich den Schlüssel hinzufügen möchten zum Beispiel die erste Taste sagen, die 427 zu den Array-Werte, so dass ich ist hol dir alle IDs. Wie würde ich das erreichen können, bitte helfen Sie.

Antwort

1

Ich habe dies durch die Verwendung folgenden Code getan:

$result = []; 
array_walk($arr,function($v,$k)use (&$result){ 
    array_unshift($v,$k); 
    $result[$k][] = $v; 
}); 

print_r($result); 

Sie können prüfen Demo here

Arbeits
Verwandte Themen