函式名: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 資訊。