ldap_compare
(PHP 4 >= 4.0.2)
ldap_compare - сравнивает значение атрибута, найденное во вхождении, специфицированном с помощью DN.
Описаниеbool ldap_compare (resource link_identifier, string dn, string attribute, string value)
Возвращает TRUE, если value совпадает, иначе возвращает FALSE. Возвращает -1 при ошибке.
ldap_compare() используется для сравнения value атрибута attribute со значением того же атрибута во вхождении LDAP-директории, специфицированном
параметром dn. Следующий пример демонстрирует, как проверить, совпал или нет данный
пароль/password с паролем, определённым в специфицированном вхождении DN.
Пример 1. Полный пример проверки пароля
<?php
$ds=ldap_connect("localhost"); // принимаем, что LDAP-сервер находится на этом хосте
if ($ds) {
// связать
if(ldap_bind($ds)) {
// prepare data
$dn = "cn=Matti Meikku, ou=My Unit, o=My Company, c=FI";
$value = "secretpassword";
$attr = "password";
// сравнить значение
$r=ldap_compare($ds, $dn, $attr, $value);
if ($r === -1) {
echo "Error: ".ldap_error($ds);
} elseif ($r === TRUE) {
echo "Password correct.";
} elseif ($r === FALSE) {
echo "Wrong guess! Password incorrect.";
}
} else {
echo "Unable to bind to LDAP server.";
}
ldap_close($ds);
} else {
echo "Unable to connect to LDAP server.";
}
?> |
|
| Предупреждение! |
|---|
ldap_compare() НЕ может использоваться для сравнения BINARY-значений!
|
Примечание: эта функция была введена в 4.0.2.
| | Другие функции на l:
lcg_value ldap_bind ldap_connect ldap_delete ldap_dn2ufn ldap_errno ldap_explode_dn ldap_first_reference ldap_free_result ldap_get_attributes ldap_get_entries ldap_get_values ldap_list ldap_modify ldap_mod_add ldap_mod_del ldap_next_attribute ldap_next_reference ldap_parse_reference ldap_parse_result ldap_rename leak levenshtein link linkinfo list log10 long2ip lstat ltrim
|