ldap_set_option

(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)

ldap_set_optionУстанавливает значение опции

Описание

ldap_set_option(?LDAP\Connection $ldap, int $option, array|string|int|bool $value): bool

Функция устанавливает для опции значение value.

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

ldap

Параметр принимает либо экземпляр класса LDAP\Connection, который возвращает функция ldap_connect(), и устанавливает значение опции для этого соединения, либо значение null для установки глобального значения опции.

option

Параметр option принимает константу из следующего списка:

Опция Тип Доступна с
LDAP_OPT_DEREF int  
LDAP_OPT_SIZELIMIT int  
LDAP_OPT_TIMELIMIT int  
LDAP_OPT_NETWORK_TIMEOUT int  
LDAP_OPT_PROTOCOL_VERSION int  
LDAP_OPT_ERROR_NUMBER int  
LDAP_OPT_REFERRALS bool  
LDAP_OPT_RESTART bool  
LDAP_OPT_HOST_NAME string  
LDAP_OPT_ERROR_STRING string  
LDAP_OPT_DIAGNOSTIC_MESSAGE string  
LDAP_OPT_MATCHED_DN string  
LDAP_OPT_SERVER_CONTROLS array  
LDAP_OPT_CLIENT_CONTROLS array  
LDAP_OPT_X_KEEPALIVE_IDLE int PHP 7.1.0
LDAP_OPT_X_KEEPALIVE_PROBES int PHP 7.1.0
LDAP_OPT_X_KEEPALIVE_INTERVAL int PHP 7.1.0
LDAP_OPT_X_TLS_CACERTDIR string PHP 7.1.0
LDAP_OPT_X_TLS_CACERTFILE string PHP 7.1.0
LDAP_OPT_X_TLS_CERTFILE string PHP 7.1.0
LDAP_OPT_X_TLS_CIPHER_SUITE string PHP 7.1.0
LDAP_OPT_X_TLS_CRLCHECK int PHP 7.1.0
LDAP_OPT_X_TLS_CRLFILE string PHP 7.1.0
LDAP_OPT_X_TLS_DHFILE string PHP 7.1.0
LDAP_OPT_X_TLS_KEYFILE string PHP 7.1.0
LDAP_OPT_X_TLS_PROTOCOL_MIN int PHP 7.1.0
LDAP_OPT_X_TLS_RANDOM_FILE string PHP 7.1.0
LDAP_OPT_X_TLS_REQUIRE_CERT int PHP 7.0.5

Опции LDAP_OPT_SERVER_CONTROLS и LDAP_OPT_CLIENT_CONTROLS требуют список элементов управления, поэтому значение передают как массив элементов управления. Элемент управления состоит из записи с ключом oid, значение которого определяет элемент управления, необязательного поля value, и дополнительного флага в записи с ключом criticality. В PHP элемент управления задаётся массивом, который содержит элемент массива с ключом oid со строковым значением, и двумя необязательными элементами массива. Необязательные элементы — ключ value со строковым значением и ключ iscritical с логическим значением. Для элемента с ключом iscritical по умолчанию устанавливается значение false, если не указали другое значение. Подробнее API протокола LDAP описывает документ » draft-ietf-ldapext-ldap-c-api-xx.txt. Смотрите также второй пример на этой странице.

Замечание:

TLS-параметры учитываются LDAPS-подключением, которое создаёт функция ldap_connect(), или TLS-подключением, которое устанавливает функция ldap_start_tls(), только если параметры установили глобально и до инициализации соединения.

value

Новое значение опции option.

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

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

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

Версия Описание
8.1.0 Параметр ldap теперь ожидает экземпляр класса LDAP\Connection; раньше параметр ждал ресурс (resource) ldap link .

Примеры

Пример #1 Пример установки версии протокола

<?php

// Переменная $ds — допустимый для сервера каталогов экземпляр класса LDAP\Connection
if (ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3)) {
echo
"Функция установила в объекте подключения 3-ю версию протокола — LDAPv3";
} else {
echo
"Сбой установки 3-й версии протокола";
}

?>

Пример #2 Пример установки серверных элементов управления

<?php

// Переменная $ds — допустимый для сервера каталогов экземпляр класса LDAP\Connection.
// Элемент управления без элемента с ключом value
$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.

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

  • ldap_get_option() - Получить текущее значение данной опции