PHP递归数组
好了,伙计们,我真的被这件事难住了。尽管读了一打解决方案,我还是弄不明白 这是我的MySql表..uid代表用户id,parentid代表用户所属的父级PHP递归数组,php,mysql,arrays,Php,Mysql,Arrays,好了,伙计们,我真的被这件事难住了。尽管读了一打解决方案,我还是弄不明白 这是我的MySql表..uid代表用户id,parentid代表用户所属的父级 id parentid uid 1 0 1 2 1 2 3 1 3 4 2 4 5 2 5 6 3 6 7 3 7 这就是我所做的
id parentid uid
1 0 1
2 1 2
3 1 3
4 2 4
5 2 5
6 3 6
7 3 7
这就是我所做的
$con = mysql_connect("localhost","rtest","123456");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
else
{
mysql_select_db("rtest", $con);
$sql="SELECT * FROM parentchild WHERE parentid=1";
$results=mysql_query($sql);
while($row = mysql_fetch_array($results))
{
$levelone[] = $row;
}
}
mysql_close($con);
foreach ($levelone as &$value) {
echo $value[uid]."<br>";
}
$con=mysql\u connect(“localhost”、“rtest”、“123456”);
如果(!$con)
{
die('无法连接:'.mysql_error());
}
其他的
{
mysql_select_db(“rtest”,$con);
$sql=“从parentchild中选择*其中parentid=1”;
$results=mysql\u查询($sql);
while($row=mysql\u fetch\u数组($results))
{
$levelone[]=$row;
}
}
mysql_close($con);
foreach($levelone作为&$value){
回显$value[uid]。“
”;
}
这里我有第一个元素的孩子。我不知道如何获取第二个数组并获取更多的值并将它们存储在更多的数组中。我以后还需要访问单个数组,出于安全原因,我不能在一个数组中调用整个表。我的逻辑在这里很弱
请提供帮助和建议。您可以通过以下方式获得ParentID列表
SELECT DISTINCT parentid FROM parentchild
现在,您可以简单地循环此列表并获得相应的孩子们可能是的副本?您试图创建的最终数据结构是什么?这不是主题,但值得指出的是,
mysql
函数已被弃用;如果可能的话,您应该改用mysqli
或PDO
库(最好是PDO)。@barmer我需要获得一个树级结构,但零售单个阵列,以便以后在每个级别使用。例如,在上面的代码中,它给出了父id为1的数组。我需要该数组,然后再次在该数组中迭代,并获得另外两个查询数据库的数组。。。