我想从$output[$i]
下面代码中返回的 DN 中提取 CN 值:
$result=ldap_search($conn, $ldap_dn, "cn=$myId",array("givenname","sn","memberof","primarygroupid")) or die("No search data found.");
$info = ldap_get_entries($conn, $result);
$output = $info[0]['memberof'];
array_shift($output);
$arrlen = count($output);
for ($i=0; $i<$arrlen; $i++)
{
print $output[$i] . "\n";
}
示例输出是
CN=FMDHS-PLM-WebTest-3,OU=Permission,OU=Groups,DC=uniwa,DC=uwa,DC=edu,DC=au
所以在这个例子中我只想得到 FMDHS-PLM-WebTest-3
任何想法我怎么能做到这一点?我是否需要用 PHP 解析字符串,或者我可以在 LDAP 中使用什么来实现这一点?
编辑
我最终使用了ldap_explode_dn
$arrlen = count($output);
for ($i=0; $i<$arrlen; $i++)
{
$parsr=ldap_explode_dn($output[$i], 0);
print str_replace('CN=', '', $parsr[0]) . "\n";
}