arrays - php recursive get parents -
i trying jquery.treeview.js fold out created folder. think need array of "parents" set class "open".
other suggestions works me ;-) (find bit much cannot find way it.
having array this:
array(7) { [126]=> array(4) { ["folder_id"]=> string(3) "126" ["folder_name"]=> string(3) "555" ["folder_parent"]=> string(3) "125" } [2]=> array(4) { ["folder_id"]=> string(1) "2" ["folder_name"]=> string(14) "administration" ["folder_parent"]=> string(1) "1" } [7]=> array(4) { ["folder_id"]=> string(1) "7" ["folder_name"]=> string(5) "britt" ["folder_parent"]=> string(1) "2" } [4]=> array(4) { ["folder_id"]=> string(1) "4" ["folder_name"]=> string(9) "documents" ["folder_parent"]=> string(1) "3" } [3]=> array(4) { ["folder_id"]=> string(1) "3" ["folder_name"]=> string(14) "infrastructure" ["folder_parent"]=> string(1) "1" } [1]=> array(4) { ["folder_id"]=> string(1) "1" ["folder_name"]=> string(4) "root" ["folder_parent"]=> string(1) "0" } [125]=> array(4) { ["folder_id"]=> string(3) "125" ["folder_name"]=> string(13) "test-deleteme" ["folder_parent"]=> string(1) "7" } } i parents selected folder_id.
getting info folder_id=126 should homecoming array parents {1,2,7,122}
anyone?
well, here mine recursive:
function getparent($folder_id, $data, $parents=array()) { $parent_id = isset($data[$folder_id]) ? $data[$folder_id]['folder_parent'] : 0; if ($parent_id > 0) { array_unshift($parents, $parent_id); homecoming getparent($parent_id, $data, $parents); } homecoming $parents; } //usage print_r(getparents(126, $your_folders)); it seems had plagiarized mancuernita's solution hereby apologize. it's similar, i'm not copying!
php arrays recursion parents
No comments:
Post a Comment