Php 如何将LDAP属性设置为NULL

Php 如何将LDAP属性设置为NULL,php,active-directory,ldap,Php,Active Directory,Ldap,我正在使用PHP LDAP库访问Microsofts Active Directory,我正在寻找一种清空单值属性的干净方法 我正在使用ldap_modify()更新active directory联系人。不幸的是,当我尝试写入空字符串(“”)时,从ldap库收到一个语法错误。当我在没有新属性的情况下尝试覆盖单个值contacts属性时,会发生这种情况 是否有一种干净的方法可以删除具有单个值的ldap属性?我现在唯一的解决办法是写“”(单个空格),但我觉得这可能会导致其他问题 顺便说一下,清理多

我正在使用PHP LDAP库访问Microsofts Active Directory,我正在寻找一种清空单值属性的干净方法

我正在使用ldap_modify()更新active directory联系人。不幸的是,当我尝试写入空字符串(“”)时,从ldap库收到一个语法错误。当我在没有新属性的情况下尝试覆盖单个值contacts属性时,会发生这种情况

是否有一种干净的方法可以删除具有单个值的ldap属性?我现在唯一的解决办法是写“”(单个空格),但我觉得这可能会导致其他问题

顺便说一下,清理多值属性很简单。LDAP不允许插入空数组(array())


非常感谢你的支持

我找到了一个清空active directory属性的好方法

对于多值和单值属性,使用ldap_modify提交空数组会清空属性

$entry = array();
$entry["member"] = array();
ldap_modify($link, $dn, $entry);
为什么我首先感到困惑:但是不允许通过ldap_add()提交空数组。我对ldap_modify和ldap_add操作使用了相同的映射函数,在通过ldap_add提交空属性时出错。这是不允许的


很高兴知道:允许通过ldap_modify提交空数组,即使该属性为空或尚未设置

你自己说的。您想删除属性值,而不是将其设置为null。谢谢您的回复。因此,我不应该传递值(空字符串),而应该通过ldap\u modify?传递单值属性的空数组?