函数名:ldap_sort()
适用版本:PHP 4 >= 4.0.5, PHP 5, PHP 7
用法:ldap_sort(resource $link_identifier, resource $result_identifier, string $sortfilter)
函数说明:ldap_sort() 用于对 LDAP 结果进行排序。排序的结果将会影响后续对结果的遍历和读取。
参数:
- $link_identifier:LDAP 连接标识符,通过 ldap_connect() 或者 ldap_bind() 返回的连接标识符。
- $result_identifier:LDAP 结果标识符,通过 ldap_search() 或者 ldap_list() 返回的结果标识符。
- $sortfilter:排序的规则。
返回值:成功时返回 TRUE,失败时返回 FALSE。
示例:
// 连接到 LDAP 服务器
$ldapconn = ldap_connect("ldap.example.com");
if ($ldapconn) {
// 绑定到 LDAP 服务器
$ldapbind = ldap_bind($ldapconn, "cn=admin,dc=example,dc=com", "password");
if ($ldapbind) {
// 执行搜索操作
$ldapsearch = ldap_search($ldapconn, "ou=users,dc=example,dc=com", "(objectClass=*)");
// 对搜索结果进行排序
$sortfilter = "sn";
ldap_sort($ldapconn, $ldapsearch, $sortfilter);
// 遍历排序后的结果
$ldapentries = ldap_get_entries($ldapconn, $ldapsearch);
for ($i = 0; $i < $ldapentries['count']; $i++) {
echo "DN: " . $ldapentries[$i]['dn'] . "<br />";
echo "CN: " . $ldapentries[$i]['cn'][0] . "<br />";
echo "Email: " . $ldapentries[$i]['mail'][0] . "<br /><br />";
}
} else {
echo "LDAP 绑定失败";
}
// 关闭 LDAP 连接
ldap_close($ldapconn);
} else {
echo "无法连接到 LDAP 服务器";
}
上述示例首先连接到 LDAP 服务器,然后进行绑定操作。接着执行搜索操作,并对搜索结果按照姓氏(sn)进行排序。最后遍历排序后的结果,打印出每个条目的 DN、CN 和 Email 信息。