扁平陣列我有一個包含的文件和目錄的列表CSV文件:CSV文件與物化路徑
Depth;Directory;
0;bin
1;basename
1;bash
1;cat
1;cgclassify
1;cgcreate
0;etc
1;aliases
1;audit
2;auditd.conf
2;audit.rules
0;home
....
每行依賴於上述的一個(深度PARAM)
我會喜歡以將其存儲到我的MongoDB collection with Materialized Paths
$directories = array(
array('_id' => null,
'name' => "auditd.conf",
'path' => "etc,audit,auditd.conf"),
array(....)
);
我不知道如何處理...... 任何想法來創建這樣一個數組?
編輯1: 我沒有真正使用目錄 - 這是一個例子,所以我不能使用FileSystems函數或FileIterators。
編輯2: 從這個CSV文件,我可以創造一個JSON嵌套數組:
function nestedarray($row){
list($id, $depth, $cmd) = $row;
$arr = &$tree_map;
while($depth--) {
end($arr);
$arr = &$arr [key($arr)];
}
$arr [$cmd] = null;
}
但我不知道它是進行的最好方式......
我第一次嘗試建立一個嵌套數組像{DIR1:[dir11:[file111,file112],dir12:[......]},然後應用一個遞歸函數,但我便無法成功在此方式 – Franquis 2012-01-18 16:33:20
陣列已經扁平化..你的例子也非常具體。深度是否爲0,1,2,1?這會讓事情變得複雜。 – 2012-01-18 16:39:38
是的,陣列變平了(我沒有編輯我的標題)。是的,深度可以走..更深:) – Franquis 2012-01-18 16:46:10