在PHP中,ldap_read函数用于从LDAP目录服务器中读取指定节点的属性
▥php
𝄐 0
怕黑怕狼等于联想相联系的恐惧属于,ph>pl带什么电,PHP ldap,phpldapadmin官网,phpldapadmin 用户日志查询,phpldapadmin登录报错not found
在PHP中,ldap_read函数用于从LDAP目录服务器中读取指定节点的属性。它的语法如下:
ldap_read(resource $ldap_link, string $base_dn, string $filter [, array $attributes [, int $attrsonly [, int $sizelimit [, int $timelimit [, int $deref]]]]])
参数说明:
- $ldap_link:一个有效的LDAP连接资源,通常通过ldap_connect函数获得。
- $base_dn:要读取的LDAP节点的基础DN(Distinguished Name)。
- $filter:一个LDAP过滤器字符串,用于指定要读取的节点。
- $attributes(可选):要读取的属性列表,默认为读取所有属性。
- $attrsonly(可选):是否仅返回属性名,默认为false,返回属性及其值。
- $sizelimit(可选):指定要返回的最大搜索结果数,默认为0表示不限制。
- $timelimit(可选):指定搜索的最大时间限制(以秒为单位),默认为0表示不限制。
- $deref(可选):指定在搜索期间如何处理别名,默认为LDAP_DEREF_NEVER。
ldap_read函数会返回一个LDAP搜索结果资源,在读取失败时返回false。您可以使用ldap_get_entries函数提取结果中的数据。
以下是ldap_read的一个示例:
php
$ldap_host = 'ldap.example.com';
$ldap_port = 389;
$ldap_link = ldap_connect($ldap_host, $ldap_port);
if ($ldap_link) {
// 进行绑定操作等...
$base_dn = 'dc=example,dc=com';
$filter = '(cn=JohnDoe)';
$attributes = ['cn', 'mail'];
$search_result = ldap_read($ldap_link, $base_dn, $filter, $attributes);
if ($search_result) {
$entries = ldap_get_entries($ldap_link, $search_result);
for ($i = 0; $i < $entries['count']; $i++) {
echo "Common Name: " . $entries[$i]['cn'][0] . "\n";
echo "Email: " . $entries[$i]['mail'][0] . "\n";
}
} else {
echo "搜索失败!\n";
}
// 关闭LDAP连接等...
} else {
echo "无法连接到LDAP服务器!\n";
}
在上述示例中,我们首先使用ldap_connect函数创建与LDAP服务器的连接。然后,我们设置要搜索的基础DN和过滤器,并指定要读取的属性列表。接下来,我们使用ldap_read函数执行搜索操作,并使用ldap_get_entries提取结果数据。最后,我们打印出每个搜索结果的“Common Name”和“Email”。
请根据实际情况修改示例中的服务器主机名、端口和DN等参数,以及绑定操作和LDAP连接的关闭。
在PHP中,ldap_read函数用于从LDAP目录服务器中读取指定节点的属性。它的语法如下:
ldap_read(resource $ldap_link, string $base_dn, string $filter [, array $attributes [, int $attrsonly [, int $sizelimit [, int $timelimit [, int $deref]]]]])
参数说明:
- $ldap_link:一个有效的LDAP连接资源,通常通过ldap_connect函数获得。
- $base_dn:要读取的LDAP节点的基础DN(Distinguished Name)。
- $filter:一个LDAP过滤器字符串,用于指定要读取的节点。
- $attributes(可选):要读取的属性列表,默认为读取所有属性。
- $attrsonly(可选):是否仅返回属性名,默认为false,返回属性及其值。
- $sizelimit(可选):指定要返回的最大搜索结果数,默认为0表示不限制。
- $timelimit(可选):指定搜索的最大时间限制(以秒为单位),默认为0表示不限制。
- $deref(可选):指定在搜索期间如何处理别名,默认为LDAP_DEREF_NEVER。
ldap_read函数会返回一个LDAP搜索结果资源,在读取失败时返回false。您可以使用ldap_get_entries函数提取结果中的数据。
以下是ldap_read的一个示例:
php
$ldap_host = 'ldap.example.com';
$ldap_port = 389;
$ldap_link = ldap_connect($ldap_host, $ldap_port);
if ($ldap_link) {
// 进行绑定操作等...
$base_dn = 'dc=example,dc=com';
$filter = '(cn=JohnDoe)';
$attributes = ['cn', 'mail'];
$search_result = ldap_read($ldap_link, $base_dn, $filter, $attributes);
if ($search_result) {
$entries = ldap_get_entries($ldap_link, $search_result);
for ($i = 0; $i < $entries['count']; $i++) {
echo "Common Name: " . $entries[$i]['cn'][0] . "\n";
echo "Email: " . $entries[$i]['mail'][0] . "\n";
}
} else {
echo "搜索失败!\n";
}
// 关闭LDAP连接等...
} else {
echo "无法连接到LDAP服务器!\n";
}
在上述示例中,我们首先使用ldap_connect函数创建与LDAP服务器的连接。然后,我们设置要搜索的基础DN和过滤器,并指定要读取的属性列表。接下来,我们使用ldap_read函数执行搜索操作,并使用ldap_get_entries提取结果数据。最后,我们打印出每个搜索结果的“Common Name”和“Email”。
请根据实际情况修改示例中的服务器主机名、端口和DN等参数,以及绑定操作和LDAP连接的关闭。
本文地址:
/show-283493.html
版权声明:除非特别标注原创,其它均来自互联网,转载时请以链接形式注明文章出处。