脚本宝典收集整理的这篇文章主要介绍了父子关系PHP / MYSQL,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
> id
>名字
> parent_id
然后我想根据他们的id选择某些行,所以像这样:
SELECT * From TABLE WHERE id IN ('1','5','8','9','35')
id parent ----------- 1 0 5 1 8 0 9 8 35 9
所以最终输出看起来像这样:
1 --5 8 --9 ----35
PS-对不起格式化,无法搞清楚:((修复?)
>我从MysqL中获取了我的parent_id和id并将其放入arraly,其中数组键是id,值是父类,因此在MysqL的while循环中,类似这样:$testarray [$id] = $PARENT_ID;
>然后我通过下面的函数运行它,并命令它我需要它.
function retrieveSuBTree($parent,$myarray) { $tempArray = $myarray; $array = array(); //Now we have our top level parent,lets put ITs children into an array,yea! while ($child = array_seArch($parent,$tempArray)) { unset($tempArray[$child]); //Now lets get all this guys children if (in_array($child,$tempArray)) { $array[$child] = retrieveSubTree($child,$tempArray); } else { $array[$child] = true; } }//end while return (!empty($array)) ? $array : false; } function retrieveTree($myarray) { $array = array(); $counter = 0; foreach ($myarray as $key => $value) { $child = $key; $parent = $value; //if this child is a parent of somebody else if (in_array($child,$myarray) && $parent != '0') { while ($myarray[$parent] != '' && $myarray[$parent] != '0') { $newparent = $myarray[$parent]; $parent = $newparent; } if (!array_key_exists($parent,$array)) { $array[$parent] = retrieveSubTree($parent,$myarray); } } else { //Now make sure they don't apPEar as some child if (!array_key_exists($parent,$myarray)) { //see if it is a parent of anybody if (in_array($child,$myarray)) { $array[$child] = retrieveSubTree($child,$myarray); } else { $array[$child] = true; } }//end if array key }//end initial IN ARRAY }//end foreach return (!empty($array) ? $array : false); } $test = array( '1'=>'15','2'=>'1','3'=>'1','4'=>'0','5'=>'0','6'=>'4','7'=>'6','8'=>'7','9'=>'2','10'=>'9' ); PRint_r(retrieveTree($test));
以上是脚本宝典为你收集整理的父子关系PHP / MYSQL全部内容,希望文章能够帮你解决父子关系PHP / MYSQL所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。