PHP  
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | my php.net 
search for in the  
<ldap_closeldap_connect>
Last updated: Mon, 16 Jul 2012

ldap_compare

(PHP 4 >= 4.0.2, PHP 5)

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

Description

mixed 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.

例子 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.";
}
?>

警告

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

注: This function was added in 4.0.2.




<ldap_closeldap_connect>
 Last updated: Mon, 16 Jul 2012
 
Copyright © 2001-2005 The PHP Group
All rights reserved.
This unofficial mirror is operated at: http://manual.phpv.net/
Last updated: Thu Jul 7 19:13:47 2005 CST