以下代码将在域控制器中搜索用户,但我想显示justthese变量中记下的每个事物的信息:“displayname”,“mail”,“samaccountname”,“sn”,“givenname ”, “部”, “telephonenumber”
$dn = "dc=xxx,dc=xxx";
$justthese = array("displayname","mail","samaccountname","sn","givenname","department","telephonenumber");
$sr=ldap_search($ldapconn, $dn,'SAMAccountName=username', $justthese);
$info = ldap_get_entries($ldapconn, $sr);
echo "<h3>".$info["count"]." entries returned</h3>";
foreach($justthese as $key=>$value){
print '<p><strong>'.$value.'</strong></p>';
}
它显示$ justthese数组中的每个项目,我想为$ justthese数组中注明的每个事物显示该用户的信息。
现在它输出如下:
显示名称
邮件
Sam帐户
SN
给定名称
系
telephonenumber
我希望它拥有它右边的实际数据,我知道我对foreach循环做错了,感谢任何帮助。
所以它看起来像这样
displayname Chuck
mail chuck@norris.com
samaccountname chucknorris
sn chuckisthebest
givenname查克诺里斯
部门安全
电话号码555-555-5555
答案 0 :(得分:1)
假设你的$info
只返回一个用户:(虽然你应该遍历用户数组或至少print_r
来查看它返回的内容)
foreach($justthese as $key=>$value){
print '<p><strong>'.$value.' ' . (isset($info[0][$value]) ? $info[0][$value] : 'empty') . '</strong></p>';
}
答案 1 :(得分:0)
你不是简单地循环错误的数组吗?您可能想要通过$ info循环?