PHP Conference Japan 2024

ldap_mod_add

(PHP 4、PHP 5、PHP 7、PHP 8)

ldap_mod_add将属性值添加到当前属性

描述

ldap_mod_add(
    LDAP\Connection $ldap,
    string $dn,
    array $entry,
    ?array $controls = null
): bool

将一个或多个属性值添加到指定的 dn。若要添加全新的对象,请参阅 ldap_add() 函数。

参数

ldap

一个 LDAP\Connection 实例,由 ldap_connect() 返回。

dn

LDAP 实体的识别名称。

entry

一个关联数组,列出要添加的属性值。如果属性尚不存在,则会添加它。如果属性已存在,则只有在它支持多个值时才能向其添加值。

controls

要与请求一起发送的 LDAP 控制 数组。

返回值

成功时返回 true,失败时返回 false

变更日志

版本 描述
8.1.0 ldap 参数现在需要一个 LDAP\Connection 实例;以前,需要一个有效的 ldap link 资源
8.0.0 controls 现在可以为空;以前,它默认为 []
7.3.0 添加了对 controls 的支持

备注

注意: 此函数是二进制安全的。

参见

添加注释

用户贡献的注释 4 条注释

11
theiderich AT laweekly dot com
19 年前
在添加/编辑用户的属性时,“memberof”属性是一个特殊情况。memberOf 属性不是用户架构的可访问属性。若要将某人添加到组中,您必须在组中添加用户,而不是在用户中添加组。您可以通过访问组属性“member”来执行此操作

<?php

$group_name
= "CN=MyGroup,OU=Groups,DC=example,DC=com";
$group_info['member'] = $dn; // 用户的 DN 添加到组的“member”数组中
ldap_mod_add($connect,$group_name,$group_info);

?>
5
bart-holland at wedefo dot nl
11 年前
在 Apple 的 OpenDirectory 中将用户添加到组的操作如下所示

<?php

$dn
= "cn=groupname,cn=groups,dc=example,dc=com";
$entry['memberuid'] = "username";

ldap_mod_add($connect, $dn, $entry);

?>
3
JoshuaStarr at aelana dot com
23 年前
要添加具有单个值的新属性

$entry[mail] = "[email protected]";
$results = ldap_mod_add($ldapConnID, $dn, $entry);

要添加具有多个值的新属性

$entry[mail][] = "[email protected]";
$entry[mail][] = "[email protected]";
$results = ldap_mod_add($ldapConnID, $dn, $entry);
-3
Claudio Lente <nelchael at ig dot com dot br>
21 年前
使用 PHP 4.2.3 与 IIS 5 和 Win2k Server。我的配置如下

$ldap_srvr = 'servername' ;
$ldap_port = 389;
$ldap_con = ldap_connect($ldap_srvr, $ldap_port);
$ldap_rdn = "username";
$ldap_pwd = "__password__";

$ldap_vbind = ldap_bind($ldap_con, $ldap_rdn, $ldap_pwd);

$base_dn= 'CN=username,CN=Users,DC=domain,DC=org,DC=us
' ;
$ldap_filter= 'objectClass=*';

$info['mail']='[email protected]';

ldap_mod_add($ldap_con, $base_dn, $info);
ldap_add($ldap_con, $base_dn, $info);

这会生成一个错误
- 警告:LDAP:无法完成修改操作。

ldap_modify($ldap_con, $base_dn, $info);

此函数正确。

就是这样。
To Top