转换亲子数组UL李
问题描述:
我得到的用户名(子)和转介(父)从数据库中的记录,并把它们放到数组通过下面的代码:转换亲子数组UL李
$sql = "SELECT username, referral FROM acc_status";
$q = $conn->prepare($sql);
$q->execute(array());
$data = array();
while($row = $q->fetch(PDO::FETCH_ASSOC)){
$data[] = $row;
}
$map = array();
foreach ($data as $node) {
// init parent
if (!array_key_exists($node['referral'], $map)) {
$map[$node['referral']] = array();
}
// add to parent
$map[$node['referral']][$node['username']] = & $map[$node['username']];
}
echo '<pre>';
print_r($map["123"]); //get parents and child of username "123" only.
echo '</pre>';
现在我想隐蔽的数组UL和李列表,下面是代码:
function printTree($tree) {
if(!is_null($tree) && count($tree) > 0) {
echo '<ul>';
foreach($tree as $node) {
echo '<li>'.$node['referral'];//error here
printTree($node['username']);//error here
echo '</li>';
}
echo '</ul>';
}
}
printTree($map["123"]);
我得到2个错误:
1)公告:未定义指数:推荐
2)公告:未定义指数:用户名
如何修复错误?
答
我会在这里简单介绍一下,简单地说,您的推荐人的名称和用户名实际上就是您的索引。所以对于$node['username']
这将是qqq我没有我的计算机显示工作代码,但是这将是。