php 使用Ldap2 新增用户 "objectclass: value #3 invalid per syntax"
时间: 2024-02-11 16:06:28 浏览: 145
Adldap2:适用于人类PHP LDAP软件包
"objectclass: value #3 invalid per syntax" 这个错误通常是由于添加的 objectclass 属性值不正确导致的。Ldap2 是一个 PHP 的 LDAP 扩展库,用于操作 LDAP 目录服务。要新增用户,需要先确定目录服务中已经定义了适当的 objectclass 属性,然后在添加新用户时,将该属性作为一个数组传递给 Ldap2 的 add() 方法。
以下是一个示例代码,用于向 LDAP 目录服务中添加一个新用户:
```php
$ldap = new Ldap();
$ldap->bind($dn, $password);
$entry = array(
"cn" => "New User",
"uid" => "newuser",
"objectclass" => array("top", "person", "organizationalPerson", "inetOrgPerson")
);
$dn = "uid=newuser,ou=People,dc=example,dc=com";
$result = $ldap->add($dn, $entry);
if($result === false) {
echo "Error: " . $ldap->getError();
} else {
echo "User added successfully";
}
```
在这个示例中,我们使用了 `top`, `person`, `organizationalPerson`, `inetOrgPerson` 四个 objectclass 属性来定义新用户的类型。如果目录服务中没有这些属性,或者属性值不正确,就会出现上述错误。
阅读全文