現在の位置: ホーム> 最新記事一覧> PHP LDAP検索の詳細な説明:接続から結果への処理の完全なガイド

PHP LDAP検索の詳細な説明:接続から結果への処理の完全なガイド

gitbox 2025-08-08

LDAPとその使用とは何ですか

LDAP、またはLightweight Directory Access Protocolは、分散ディレクトリ情報にアクセスおよび管理するために使用されるアプリケーションプロトコルです。ユーザーアカウント、グループ情報、その他の関連データの保存に広く使用されています。 LDAPを介して、アプリケーションはユーザー認証と連絡先情報クエリをすばやく実現できます。その動作の原則を理解することは、PHP LDAP検索を実装するための鍵です。

PHPとLDAPの統合

PHPでLDAPを使用することは非常に便利です。まず、PHPのLDAP拡張がインストールされ、有効になっていることを確認する必要があります。次のコマンドで検出できます。

 <span class="fun">php -m | grep ldap</span>

「LDAP」が表示されない場合は、システム環境に従って対応する拡張機能をインストールしてください。

LDAP接続を確立します

検索を実行する前に、LDAPサーバーに接続する必要があります。例は次のとおりです。

 $ldap = ldap_connect("ldap://your_ldap_server.com");
if ($ldap) {
    ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3);
    ldap_set_option($ldap, LDAP_OPT_REFERRALS, 0);
    $bind = ldap_bind($ldap, "username", "password");
}

Your_ldap_server.comユーザー名パスワードを実際の情報に置き換えてください。

LDAP検索を実行します

接続が成功した後、LDAP検索を実行できます。以下は基本的な例です。

 $searchBase = "ou=users,dc=example,dc=com";
$searchFilter = "(uid=john)";
$result = ldap_search($ldap, $searchBase, $searchFilter);
$entries = ldap_get_entries($ldap, $result);
print_r($entries);

ou = user、dc = example、dc = comおよびフィルター条件(uid = john)をニーズに応じて変更してください。

LDAP検索結果を処理します

LDAP検索結果には複数のエントリが含まれている場合があり、以下を処理できます。

 foreach ($entries as $entry) {
    if (isset($entry['dn'])) {
        echo "DN: " . $entry['dn'] . "\n";
        echo "Email: " . $entry['mail'][0] . "\n";
    }
}

このコードの例では、各エントリの著名な名前(DN)と電子メールアドレスが抽出され、出力されます。

LDAP接続を閉じます

操作が完了したら、接続を閉じてリソースをリリースする必要があります。

 <span class="fun">ldap_unbind($ ldap);</span>

要約します

サーバーへの接続、クエリ、結果処理の実行など、PHP LDAP検索プロセスをマスターすることにより、ユーザー検証と情報検索機能をより効率的に完了できます。安定した信頼できるアプリケーションを確保するために、安全とパフォーマンスのベストプラクティスに従ってください。このガイドが、PHP開発でLDAPサービスをスムーズに使用するのに役立つことを願っています。