PHP マニュアル
前のページ |  | 次のページ

# ldap_compare

(PHP 4 >= 4.0.2, PHP 5)

ldap_compare -- DN で指定したエントリで見付かった属性の値を比較する

## 説明

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

value がマッチする場合に `TRUE`、その他の場合に `FALSE`、エラーの場合に -1 を返します。

ldap_compare()は、属性 attribute の値 value を dn で指定した LDAP ディレクトリエントリの 同じ属性の値と比較するために使用します。

次の例は、指定したパスワードが DN の指定したエントリで定義された ものと一致するかどうかをチェックする方法を示しています。

例 1. パスワード確認の例

`<?php
$ds=ldap_connect("localhost"); // LDAPサーバーが同一ホストであると仮定
if ($ds) {
// バインド
if (ldap_bind($ds)) {
// データを準備
$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 で追加されました。

前のページ | ホーム | 次のページ
ldap_close | 上に戻る | ldap_connect