Php 将父子数组转换为ul li
我从数据库中获取用户名(子)和转诊(父)记录,并通过下面的代码将它们放入数组中:Php 将父子数组转换为ul li,php,pdo,Php,Pdo,我从数据库中获取用户名(子)和转诊(父)记录,并通过下面的代码将它们放入数组中: $sql = "SELECT username, referral FROM acc_status"; $q = $conn->prepare($sql); $q->execute(array()); $data = array(); while($row = $q->fetch(PDO::FETCH_ASSOC)){
$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>';
$sql=“选择用户名,从acc\U状态转诊”;
$q=$conn->prepare($sql);
$q->execute(array());
$data=array();
而($row=$q->fetch(PDO::fetch\U ASSOC)){
$data[]=$row;
}
$map=array();
foreach($data作为$node){
//初始父级
如果(!array_key_存在($node['reference',$map)){
$map[$node['reference']]=array();
}
//添加到父级
$map[$node['referral'][$node['username']]=&$map[$node['username']];
}
回声';
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"]);
印刷品($map[“123”])//仅获取用户名“123”的父项和子项。
回声';
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"]);
以下是输出:
现在我想将数组转换为ul和li列表,下面是代码:
函数printree($tree){
如果(!is_null($tree)&&count($tree)>0){
回声“”;
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"]);
foreach($tree作为$node){
echo“”.$node['reference'];//此处出错
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"]);
printTree($node['username']);//此处出错
回音“ ”;
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"]);
}
回声“”;
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"]);
}
}
printTree($map[“123”]);
我有两个错误:
1) 注意:未定义索引:推荐
2) 注意:未定义索引:用户名
如何修复错误?我将在这里简单介绍一下,简单地说,您的推荐名称和用户名实际上是您的索引。因此,对于
$node['username']
来说,这将是qqq,因为我没有随身携带电脑来显示工作代码,但这就是它将是什么