ldap_get_values

ldap_get_values -- 結果エントリから全ての値を得る

説明

array ldap_get_values(int リンク ID, int result_entry_identifier, string 属性);

成功した場合、指定した属性に関する値を配列を返します。 エラーの場合には、 FALSE を返します。

ldap_get_values() 関数は、結果のエントリにおける属性の全ての値を 読み込むために使用されます。 エントリは、result_entry_identifier により指定されます。 値の数は、結果を有する配列において "count" とインデックス指定することに より得ることができます。 個々の値は、配列において整数インデックスを指定することによりアクセス できます。 最初のインデックスは、0 です。

この関数のコールは、result_entry_identifier を必要とします。このため、 事前に LDAP の検索用関数のコールと個々のエントリ取得用 関数のコールを行っておく必要があります。

アプリケーションでは、 ("surname" または "mail" のような)特定の属性を探すために その特性をコードに埋め込んで置くか、さもなくば、 指定したエントリに関して存在する属性を調べるために ldap_get_attributes をコールする必要があります。

LDAP ではある属性に関して複数のエントリを持つことが可能です。 このため、例えば、ある人に関する "mail" という属性で呼ばれる全ての ディレクトリエントリについて多数の電子メールアドレスを保存することが できます。


    return_value["count"] = 属性の値の数
    return_value[0] = 属性の最初の値
    return_value[i] = 属性の i 番目の値

例 1. あるディレクトリエントリの全ての "mail" 属性の一覧を表示します


 // $ds はディレクトリサーバーの有効なリンク ID
 
 // $sr は事前の LDAP 検索コールのどれかから返された有効な検索結果
 
 // $entry はディレクトリエントリを返すコールのどれかから返された有効な
 // エントリ ID
 
 $values = ldap_get_values($ds, $entry,"mail");
 
 echo $values["count"]." email addresses for this entry.<p>";
 
 for ($i=0; $i < $values["count"]; $i++)
     echo $values[$i]."<br>";