Descriptionbool ldap_set_option ( resource link_identifier, int option, mixed newval )
Sets the value of the specified option to be
newval. 如果成功则返回 TRUE,失败则返回 FALSE。
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.
注:
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.
例子 1. Set protocol version<?php // $ds is a valid link identifier for a directory serverif (ldap_set_option($ds,LDAP_OPT_PROTOCOL_VERSION,3)) {
echo"Using LDAPv3";
} else {
echo"Failed to set protocol version to 3";
}?>
例子 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 controlsif (!ldap_set_option($ds,LDAP_OPT_SERVER_CONTROLS, array($ctrl1,$ctrl2)))
echo"Failed to set server controls";?>