Учебник РНР
НазадВперёд

ldap_set_option

(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().


Назад Оглавление Вперёд
ldap_search Вверхldap_set_rebind_proc