PHP で LDAP 属性から一部のデータを取得する際に問題が発生しています。
LDAP に接続し、クエリを実行し、結果を次のように var に保存します。
$info = ldap_get_entries($connect, $sr);
これで、次のように、必要な LDAP 属性のほとんどをセッション変数に格納できます。
$_SESSION['accountFirstName'] = $info[0]['givenname'][0];
$_SESSION['accountLastName'] = $info[0]['sn'][0];
$_SESSION['accountEmail'] = $info[0]['mail'][0];
これらは正常に動作します..問題ありません。ただし、保存する必要がある別の変数があります。連想配列だと思います。何らかの理由で、何をしても、NOTICE: Undefined index
その特定の属性に関する警告が表示されます。上記のデモンストレーションのように保存しようとしましたが、正直なところ、属性名の両端の [0] インデックスが何を意味するのか完全にはわかりません.. LDAP に慣れておらず、率直に言って、セットアップは非常に混乱しています.
だから私は私の質問は次のとおりだと思います:
LDAP クエリから返された連想配列にどのようにアクセスしますか?
「未定義のインデックス」とはどういう意味ですか? その属性が存在しないこと、または提供されたインデックスに存在しないことを意味しますか?
LDAP クエリをテストして、変数が存在するかどうかを確認するにはどうすればよいですか?
クエリを実行するアカウントに適切な LDAP アクセス権限がない可能性があります (プロジェクトは大学向けであり、官僚主義がたくさんあります)。コードでそれを確認する方法はありますか?
ありがとうございました!そして、提供された情報の曖昧さをお詫びします。今は口を開けてはいけません。