|
(PHP 4 >= 4.0.4)
ldap_set_option - устанавливает значение данной опции. Описание
bool ldap_set_option (resource link_identifier, int option, mixed newval)
Устанавливает значение специфицированной опции - newval. Возвращает TRUE при успехе, FALSE при неудаче.
Параметр option может быть одним из:
LDAP_OPT_DEREF, LDAP_OPT_SIZELIMIT, LDAP_OPT_TIMELIMIT,
LDAP_OPT_PROTOCOL_VERSION, LDAP_OPT_ERROR_NUMBER, LDAP_OPT_REFERRALS, LDAP_OPT_RESTART, LDAP_OPT_HOST_NAME, LDAP_OPT_ERROR_STRING,
LDAP_OPT_MATCHED_DN, LDAP_OPT_SERVER_CONTROLS, LDAP_OPT_CLIENT_CONTROLS. Здесь дано краткое описание, детали см. в
draft-ietf-ldapext-ldap-c-api-xx.txt.
Опции LDAP_OPT_DEREF, LDAP_OPT_SIZELIMIT, LDAP_OPT_TIMELIMIT,
LDAP_OPT_PROTOCOL_VERSION и LDAP_OPT_ERROR_NUMBER имеют integer-значение, LDAP_OPT_REFERRALS
и LDAP_OPT_RESTART имеют boolean-значение, а опции LDAP_OPT_HOST_NAME, LDAP_OPT_ERROR_STRING
и LDAP_OPT_MATCHED_DN имеют string-значение. Первый пример иллюстрирует их использование. Опции
LDAP_OPT_SERVER_CONTROLS и LDAP_OPT_CLIENT_CONTROLS требуют списка controls, этот значит, что значение обязано быть массивом из controls.
Элемент/control состоит из списка oid, идентифицирующих элемент, необязательного value и необязательного флага/flag
criticality\критичности. В PHP элемент задаётся массивом, содержащим элемент с ключом oid и строковым значением и два необязательных элемента. Необязательные элементы
это ключ value со строковым значением и ключ iscritical с булевым значением.
iscritical по умолчанию FALSE, если не предоставлен. См. также второй пример.
Примечание: эта функция доступна только при использовании OpenLDAP 2.x.x OR Netscape Directory SDK x.x и была введена в PHP 4.0.4.
Пример 1. Установка версии протокола
// $ds этот правильный идентификатор ссылки для сервера директорий
if (ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3))
echo "Using LDAPv3";
else
echo "Failed to set protocol version to 3"; |
|
Пример 2. Установка серверных элементов управления/controls
// $ds этот правильный идентификатор ссылки для сервера директорий
// элемент управления без значения
$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 "Failed to set server controls"; |
|
См. также ldap_get_option(). | |