ldap_delete

(PHP 4, PHP 5, PHP 7, PHP 8)

ldap_deleteEfface une entrée dans un dossier

Description

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

Efface une entrée spécifique d'un dossier LDAP.

Liste de paramètres

ldap

Une instance LDAP\Connection, retourné par ldap_connect().

dn

Le nom DN de l'entrée LDAP.

controls

Tableau de Contrôles LDAP à envoyer avec la requête.

Valeurs de retour

Cette fonction retourne true en cas de succès ou false si une erreur survient.

Historique

Version Description
8.1.0 Le paramètre ldap attend désormais une instance de LDAP\Connection ; auparavant, une ressource ldap link était attendue.
8.0.0 controls est désormais nullable ; auparavant, sa valeur par défaut était [].
7.3.0 Support pour controls a été ajouté.

Voir aussi

add a note add a note

User Contributed Notes 2 notes

up
1
grossman at post dot cz
6 years ago
Be aware! Operation not allowed on non-leaf.
up
0
gabriel at hrz dot uni-marburg dot de
22 years ago
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));
    }
}
To Top