函式名:ldap_compare()
適用版本:PHP 4 >= 4.0.2, PHP 5, PHP 7
用法:ldap_compare(resource $link_identifier, string $dn, string $attribute, string $value): bool
描述:ldap_compare() 函式用於比較指定的屬性和值是否存在於指定的條目中。該函式返回一個布林值,如果比較成功則返回 true,否則返回 false。
引數:
- $link_identifier:LDAP 連線識別符號,由 ldap_connect() 函式返回。
- $dn:要比較的條目的 DN (Distinguished Name)。
- $attribute:要比較的屬性名。
- $value:要比較的屬性值。
返回值:如果比較成功則返回 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) {
// 比較條目的屬性和值
$dn = "uid=johndoe,ou=users,dc=example,dc=com";
$attribute = "cn";
$value = "John Doe";
$compareResult = ldap_compare($ldapconn, $dn, $attribute, $value);
if ($compareResult) {
echo "屬性和值匹配";
} else {
echo "屬性和值不匹配";
}
} else {
echo "LDAP 繫結失敗";
}
// 關閉 LDAP 連線
ldap_close($ldapconn);
} else {
echo "無法連線到 LDAP 伺服器";
}
該示例演示瞭如何使用 ldap_compare() 函式來比較指定條目的屬性和值。首先,我們連線到 LDAP 伺服器,然後使用 ldap_bind() 函式進行繫結。然後,我們指定要比較的條目的 DN、要比較的屬性名和屬性值,並將其作為引數傳遞給 ldap_compare() 函式。最後,根據比較結果輸出相應的資訊。