Skip to content

Instantly share code, notes, and snippets.

@egulhan
Created March 7, 2014 14:38
Show Gist options
  • Save egulhan/9412589 to your computer and use it in GitHub Desktop.
Save egulhan/9412589 to your computer and use it in GitHub Desktop.
Recursive version of ldap_delete
// source: http://www.php.net/manual/en/function.ldap-delete.php
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));
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment