top

Описание функции ldap-set-option



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() .
corner
My pencil ;)
Главная     Сервисы     Портфолио     Проги     Видео     Контакты     Ссылки     Текст