Podręcznik PHP
Poprzedni |  | Następny

# ldap_compare

(PHP 4 >= 4.0.2, PHP 5)

ldap_compare -- Compare value of attribute found in entry specified with DN

## Description

bool ldap_compare ( resource link_identifier, string dn, string attribute, string value )

Returns `TRUE` if value matches otherwise returns `FALSE`. Returns -1 on error.

ldap_compare() is used to compare value of attribute to value of same attribute in LDAP directory entry specified with dn.

The following example demonstrates how to check whether or not given password matches the one defined in DN specified entry.

Przykład 1. Complete example of password check

`<?php
$ds=ldap_connect("localhost"); // assuming the LDAP server is on this host
if ($ds) {
// bind
if (ldap_bind($ds)) {
// prepare data
$dn = "cn=Matti Meikku, ou=My Unit, o=My Company, c=FI";
$value = "secretpassword";
$attr = "password";
// compare value
$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.";
}
?>`

Ostrzeżenie
ldap_compare() can NOT be used to compare BINARY values!

> Notatka: This function was added in 4.0.2.

Poprzedni | Spis treści | Następny
ldap_close | Początek rozdziału | ldap_connect