ldap_delete()
(PHP 4, PHP 5, PHP 7)
Delete an entry from a directory
说明
ldap_delete(resource $link_identifier,string $dn[,array $serverctrls= array()]): bool
Deletes a particular entry in LDAP directory.
参数
- $link_identifier
An LDAP link identifier, returned by ldap_connect().
- $dn
The distinguished name of an LDAP entity.
- $serverctrls
Array of LDAP Controls to send with the request.
返回值
成功时返回TRUE,或者在失败时返回FALSE。
更新日志
| 版本 | 说明 |
|---|---|
| 7.3 | Support for$serverctrlsadded |
参见
ldap_delete_ext()Delete an entry from a directoryldap_add()Add entries to LDAP directory
Be aware! Operation not allowed on non-leaf.
Useful function to delete dn entries recursively
bool myldap_delete ( resource ds, string dn, bool recursive)
Returns TRUE on success, FALSE on failure
recursive is by default FALSE (same behaviour as ldap_delete)
function myldap_delete($ds,$dn,$recursive=false){
if($recursive == false){
return(ldap_delete($ds,$dn));
}else{
//searching for sub entries
$sr=ldap_list($ds,$dn,"ObjectClass=*",array(""));
$info = ldap_get_entries($ds, $sr);
for($i=0;$i<$info['count'];$i++){
//deleting recursively sub entries
$result=myldap_delete($ds,$info[$i]['dn'],$recursive);
if(!$result){
//return result code, if delete fails
return($result);
}
}
return(ldap_delete($ds,$dn));
}
}