(PHP 4 >= 4.0.4, PHP 5)
ldap_set_option — Set the value of the given option
Sets the value of the specified option to be newval
.
link_identifier
An LDAP link identifier, returned by ldap_connect().
option
The parameter option
can be one of:
Option | Type | Available since |
---|---|---|
LDAP_OPT_DEREF |
integer | |
LDAP_OPT_SIZELIMIT |
integer | |
LDAP_OPT_TIMELIMIT |
integer | |
LDAP_OPT_NETWORK_TIMEOUT |
integer | PHP 5.3.0 |
LDAP_OPT_PROTOCOL_VERSION |
integer | |
LDAP_OPT_ERROR_NUMBER |
integer | |
LDAP_OPT_REFERRALS |
bool | |
LDAP_OPT_RESTART |
bool | |
LDAP_OPT_HOST_NAME |
string | |
LDAP_OPT_ERROR_STRING |
string | |
LDAP_OPT_MATCHED_DN |
string | |
LDAP_OPT_SERVER_CONTROLS |
array | |
LDAP_OPT_CLIENT_CONTROLS |
array |
LDAP_OPT_SERVER_CONTROLS
and
LDAP_OPT_CLIENT_CONTROLS
require a list of
controls, this means that the value must be an array of controls. A
control consists of an oid identifying the control,
an optional value, and an optional flag for
criticality. In PHP a control is given by an
array containing an element with the key oid
and string value, and two optional elements. The optional
elements are key value with string value
and key iscritical with boolean value.
iscritical defaults to FALSE
if not supplied. See » draft-ietf-ldapext-ldap-c-api-xx.txt
for details. See also the second example below.
newval
The new value for the specified option
.
成功时返回 TRUE
, 或者在失败时返回 FALSE
。
Example #1 Set protocol version
<?php
// $ds is a valid link identifier for a directory server
if (ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3)) {
echo "Using LDAPv3";
} else {
echo "Failed to set protocol version to 3";
}
?>
Example #2 Set server controls
<?php
// $ds is a valid link identifier for a directory server
// control with no value
$ctrl1 = array("oid" => "1.2.752.58.10.1", "iscritical" => true);
// iscritical defaults to FALSE
$ctrl2 = array("oid" => "1.2.752.58.1.10", "value" => "magic");
// try to set both controls
if (!ldap_set_option($ds, LDAP_OPT_SERVER_CONTROLS, array($ctrl1, $ctrl2))) {
echo "Failed to set server controls";
}
?>
Note:
This function is only available when using OpenLDAP 2.x.x OR Netscape Directory SDK x.x.