(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
ldap_set_option — Установить значение данной опции
Устанавливает значение указанной опции в value
.
ldap
Либо экземпляр LDAP\Connection, возвращаемый функцией ldap_connect() для установки опции для этого соединения, либо null
для установки опции глобально.
option
Опция option
может быть одной из:
LDAP_OPT_SERVER_CONTROLS
и LDAP_OPT_CLIENT_CONTROLS
требуют список элементов управления. Это означает, что значение должно быть массивом элементов управления. Элемент управления состоит из oid, определяющего элемент управления, опционального значения, и дополнительного флага для критичности. В PHP элемент управления задаётся массивом, содержащим элемент с ключом oid и строковым значением, и двумя необязательными элементами. Необязательные элементы являются ключом value со строковым значением и ключом iscritical с логическим значением. iscritical по умолчанию устанавливается в false
, если не указан. Для более подробной информации смотрите » draft-ietf-ldapext-ldap-c-api-xx.txt. Смотрите также второй пример, расположенный ниже.
value
Новое значение для указанной option
(опции).
Возвращает true
в случае успешного выполнения или false
, если возникла ошибка.
Версия | Описание |
---|---|
8.1.0 | Параметр ldap теперь ожидает экземпляр класса LDAP\Connection; раньше параметр ждал ресурс (resource) ldap link . |
Пример #1 Устанавливает версию протокола
<?php
// $ds - действительный идентификатор связи с LDAP-сервером
if (ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3)) {
echo "Используется LDAPv3";
} else {
echo "Не удалось установить версию протокола в 3";
}
?>
Пример #2 Устанавливает управление сервером
<?php
// $ds - действительный идентификатор связи с LDAP-сервером
// элемент управления с отсутствующим значением
$ctrl1 = array("oid" => "1.2.752.58.10.1", "iscritical" => true);
// iscritical по умолчанию FALSE
$ctrl2 = array("oid" => "1.2.752.58.1.10", "value" => "magic");
// попытка установить оба элемента управления
if (!ldap_set_option($ds, LDAP_OPT_SERVER_CONTROLS, array($ctrl1, $ctrl2))) {
echo "Не удалось установить серверные элементы управления";
}
?>
Замечание:
Эта функция доступна только, когда используется OpenLDAP 2.x.x или Netscape Directory SDK x.x.