特殊文字 (",", "+", """, "\", "<", ">", ";", "#", "=", space or a hexpair) を DN の属性や値に使用することもできます。 Net_LDAP2_Util::escape_dn_value()、 Net_LDAP2_Util::unescape_dn_value()、 Net_LDAP2_Util::ldap_explode_dn() そして Net_LDAP2_Util::canonical_dn() の API ドキュメントを参照ください。 これらの関数を用いると、DN を安全に処理することができます。
サーバに接続したら、Net_LDAP の search() メソッドでディレクトリを検索しましょう。 このメソッドのパラメータは次の三つです。
$base は検索時に使用するベース DN です。 null のままにしておくと、 接続時に指定したデフォルトのベース DN を使用します。
$filter は、返される結果を指定するための問い合わせフィルタです。 文字列 (熟練者用) か、あるいは Net_LDAP_Filter オブジェクトで指定します。オブジェクトで指定することをお勧めします。 Net_LDAP_Filter は、LDAP のフィルタに適したエスケープを自動的に行います。 LDAP フィルタについては、別途 LDAP フィルタ で説明します。
$params は、現在のクエリで使用する設定項目の配列となります。
表 54-1設定パラメータ
名前 | 説明 | デフォルト |
---|---|---|
scope |
検索で使用するスコープ
| sub |
sizelimit | 結果として返すエントリの最大数 | 0 (無制限) |
timelimit | 検索時の最大の待ち時間 | 0 (無制限) |
attrsonly | true の場合は属性名のみを返す | false |
attributes | そのエントリが含んでいる属性名の配列。 必要な属性のみに絞り込むことをお勧めします。 | array() (すべての属性) |
例 54-1検索クエリの作成
|