2013-11-28 60 views
1

我需要以下數據以CSV轉換爲嵌套樹嵌套編號到數組鍵

S.No Name 
1  A 
1.1  B 
1.1.1 C 
1.1.2 D 
2  E 
2.1  F 
2.2  G 

有什麼辦法S.No可以用來做array keys1.1.1$test[1][1][1],然後我可以存儲對應Name作爲價值。

或者我應該做父子類型數組? 將此轉換爲樹/嵌套列表的最佳方法是什麼?

回答

4

可以使用該函數來設置一個陣列內的嵌套值:

function set_nested_value(array &$array, $index, $value) 
{ 
    $node = &$array; 

    foreach (explode('.', $index) as $path) { 
     $node = &$node[$path]; 
    } 

    $node = $value; 
} 

$a = array(); 
set_nested_value($a, '1.1.1', 'A'); 
print_r($a); 

輸出:

Array 
(
    [1] => Array 
     (
      [1] => Array 
       (
        [1] => hello 
       ) 

     ) 

)