(PHP 4 >= 4.0.4)
ldap_set_option -- Set the value of the given option
Description
bool ldap_set_option (int link_identifier, int option, mixed
newval)
Sets the value of the specified option to be newval. Returns
TRUE on success, FALSE on failure. on error.
The parameter option can be one of: 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. Here's a brief description, see draft-ietf-ldapext-ldap-c-api-xx.txt for details.
The options LDAP_OPT_DEREF, LDAP_OPT_SIZELIMIT, LDAP_OPT_TIMELIMIT,
LDAP_OPT_PROTOCOL_VERSION and LDAP_OPT_ERROR_NUMBER have integer value, LDAP_OPT_REFERRALS and
LDAP_OPT_RESTART have boolean value, and the options LDAP_OPT_HOST_NAME, LDAP_OPT_ERROR_STRING and
LDAP_OPT_MATCHED_DN have string value. The first example illustrates their use. The options
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 also the second example
below.
Note: This function is only available when using OpenLDAP 2.x.x OR Netscape
Directory SDK x.x, and was added in PHP 4.0.4.
|
Example 1. Set protocol version
// $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
// $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";
|
|
See also
ldap_get_option().
|