我有一个PHP数组,它给出了这个结果:
Array
(
[count] => 1
[0] => Array
(
[sn] => Array
(
[count] => 1
[0] => Smith
)
[0] => sn
[givenname] => Array
(
[count] => 1
[0] => John
)
[1] => givenname
[mail] => Array
(
[count] => 1
[0] => john.smith@mydomain.com
)
[2] => mail
[count] => 3
[dn] => CN=John Smith,OU=IT Admin,DC=mylocaldomain,DC=local
)
)
我如何去提取电子邮件地址从这个数组结果到一个单一的字符串?我需要能够引用电子邮件地址,但找不到一种方法来提取该信息。
LDAP代码的主要部分如下:$dn = “OU=IT Admin,DC=mylocaldomain,DC=local”;
$ds = $ldapconnectionstring;
$person = “johnsmith”;
$filter="(|(sn=$person*)(samaccountname=$person*))";
$justthese = array("ou", "sn", "givenname", "mail");
$sr=ldap_search($ds, $dn, $filter, $justthese);
$info = ldap_get_entries($ds, $sr);
echo '<pre>'; print_r($info); echo '<pre/>';
我已经在谷歌上搜索过了,阅读了关于数组的PHP文档,并在这里阅读了各种类似的帖子,但似乎没有什么适合我。
我需要以:
结尾 echo $email;
和返回:
john.smith@mydomain.com
DUMP基本分析101:
省略转储中不相关的部分:
Array <-- $array
[0] => Array <-- [0]
[mail] => Array <-- ['mail']
[0] => john.smith@mydomain.com <-- [0]
给你
$array[0]['mail'][0];
你所需要做的就是阅读print_r()
显示给你的内容。
(Array) [0](Array) > [mail](Array) > [0](string) => john.smith@mydomain.com
$info = ldap_get_entries($ds, $sr);
$email = $info[0]['mail'][0];
echo $email;
参见使用方括号语法访问数组元素一节http://docs.php.net/manual/en/language.types.array.php