以下是我的数据库表数据
id name manager_id hr_id
1 abc 0 0
20 abc1 22 21
21 abc2 22 1
22 abc3 1 1
31 abc4 20 21
32 abc5 20 21
function get_child_users($id){
global $mysqli;
$q ="SELECT * FROM users where manager_id ='$id' or hr_id ='$id'";
$sql = $mysqli->query($q);
echo '<ul>';
$count = $sql->num_rows;
if($count > 0 ){
while($row = $sql->fetch_array()){
echo '<li id='.$row['id'].'>'.$row['username'].'';
echo'</li>';
}
echo '</ul>';
}
}
以上是我正在创作的功能。
我只想获取数据,如果看起来像
管理员
用户(拥有manager_id或admin的hr_id)
如果有users.suppose它返回2个用户
然后(检查这些用户下的用户)....等等
最后成为一个显示用户层次结构的树。
答案 0 :(得分:0)
你先解码它,然后得到你需要的任何值,如下:
$decoded_json = json_decode($json);
print_r($decoded_json->person->names[0]);
echo $decoded_json->person->names[0]->first;
如果你需要循环每个人名,例如:
foreach ($decoded_json->person->names as $key => $each_person_name) {
echo $each_person_name->first . '<br>';
}
你的json格式虽然有点奇怪..
答案 1 :(得分:0)
解决了问题
function get_child_users($id){
global $mysqli;
$q ="SELECT * FROM users where manager_id ='$id' or hr_id ='$id'";
$sql = $mysqli->query($q);
$count = $sql->num_rows;
if($count > 0 ){
echo '<ul>';
while($row = $sql->fetch_array()){
echo '<li id='.$row['id'].'>'.$row['username'].'';
get_child_users($row['id']);
echo'</li>';
}
echo '</ul>';
}
}