PHP 8.4.2 Released!

ldap_delete

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

ldap_deleteУдаляет запись из каталога LDAP

Описание

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

Функция удаляет конкретную запись из LDAP-каталога.

Список параметров

ldap

Экземпляр класса LDAP\Connection, который возвращает функция ldap_connect().

dn

Уникальное имя LDAP-записи.

controls

Массив управляющих объектов протокола LDAP для отправки в запросе.

Возвращаемые значения

Функция возвращает true, если выполнилась успешно, или false, если возникла ошибка.

Список изменений

Версия Описание
8.1.0 Параметр ldap теперь ожидает экземпляр класса LDAP\Connection; раньше параметр ждал ресурс (resource) ldap link .
8.0.0 Параметр controls теперь допускает значение null; раньше значение по умолчанию равнялось [].
7.3.0 Добавлена поддержка параметра controls.

Смотрите также

  • ldap_delete_ext() - Удалить запись из директории
  • ldap_add() - Добавляет запись в LDAP-каталог

Добавить

Примечания пользователей 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