<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML ><HEAD ><TITLE >ldap_set_option</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK REL="HOME" TITLE="PHP 手册" HREF="index.html"><LINK REL="UP" TITLE="LDAP Functions" HREF="ref.ldap.html"><LINK REL="PREVIOUS" TITLE="ldap_search" HREF="function.ldap-search.html"><LINK REL="NEXT" TITLE="ldap_set_rebind_proc" HREF="function.ldap-set-rebind-proc.html"><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=UTF-8"></HEAD ><BODY CLASS="refentry" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >PHP 手册</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="function.ldap-search.html" ACCESSKEY="P" >上一页</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="function.ldap-set-rebind-proc.html" ACCESSKEY="N" >下一页</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><H1 ><A NAME="function.ldap-set-option" ></A >ldap_set_option</H1 ><DIV CLASS="refnamediv" ><A NAME="AEN105963" ></A ><P > (PHP 4 >= 4.0.4, PHP 5)</P >ldap_set_option -- Set the value of the given option</DIV ><DIV CLASS="refsect1" ><A NAME="AEN105966" ></A ><H2 >说明</H2 >bool <B CLASS="methodname" >ldap_set_option</B > ( resource link_identifier, int option, mixed newval )<BR ></BR ><P > Sets the value of the specified option to be <CODE CLASS="parameter" >newval</CODE >. </P ></DIV ><DIV CLASS="refsect1" ><A NAME="AEN105982" ></A ><H2 >参数</H2 ><P > <P ></P ><DIV CLASS="variablelist" ><DL ><DT ><CODE CLASS="parameter" >link_identifier</CODE ></DT ><DD ><P > An LDAP link identifier, returned by <A HREF="function.ldap-connect.html" ><B CLASS="function" >ldap_connect()</B ></A >. </P ></DD ><DT ><CODE CLASS="parameter" >option</CODE ></DT ><DD ><P > The parameter <CODE CLASS="parameter" >option</CODE > can be one of: <DIV CLASS="informaltable" ><P ></P ><A NAME="AEN105998" ></A ><TABLE BORDER="1" CLASS="CALSTABLE" ><COL><COL><COL><THEAD ><TR ><TH >Option</TH ><TH >Type</TH ><TD > </TD ></TR ></THEAD ><TBODY ><TR ><TD ><TT CLASS="constant" ><B >LDAP_OPT_DEREF</B ></TT ></TD ><TD >integer</TD ><TD > </TD ></TR ><TR ><TD ><TT CLASS="constant" ><B >LDAP_OPT_SIZELIMIT</B ></TT ></TD ><TD >integer</TD ><TD > </TD ></TR ><TR ><TD ><TT CLASS="constant" ><B >LDAP_OPT_TIMELIMIT</B ></TT ></TD ><TD >integer</TD ><TD > </TD ></TR ><TR ><TD ><TT CLASS="constant" ><B >LDAP_OPT_PROTOCOL_VERSION</B ></TT ></TD ><TD >integer</TD ><TD > </TD ></TR ><TR ><TD ><TT CLASS="constant" ><B >LDAP_OPT_ERROR_NUMBER</B ></TT ></TD ><TD >integer</TD ><TD > </TD ></TR ><TR ><TD ><TT CLASS="constant" ><B >LDAP_OPT_REFERRALS</B ></TT ></TD ><TD >bool</TD ><TD > </TD ></TR ><TR ><TD ><TT CLASS="constant" ><B >LDAP_OPT_RESTART</B ></TT ></TD ><TD >bool</TD ><TD > </TD ></TR ><TR ><TD ><TT CLASS="constant" ><B >LDAP_OPT_HOST_NAME</B ></TT ></TD ><TD >string</TD ><TD > </TD ></TR ><TR ><TD ><TT CLASS="constant" ><B >LDAP_OPT_ERROR_STRING</B ></TT ></TD ><TD >string</TD ><TD > </TD ></TR ><TR ><TD ><TT CLASS="constant" ><B >LDAP_OPT_MATCHED_DN</B ></TT ></TD ><TD >string</TD ><TD > </TD ></TR ><TR ><TD ><TT CLASS="constant" ><B >LDAP_OPT_SERVER_CONTROLS</B ></TT ></TD ><TD >array</TD ><TD > </TD ></TR ><TR ><TD ><TT CLASS="constant" ><B >LDAP_OPT_CLIENT_CONTROLS</B ></TT ></TD ><TD >array</TD ><TD > </TD ></TR ></TBODY ></TABLE ><P ></P ></DIV > </P ><P > <TT CLASS="constant" ><B >LDAP_OPT_SERVER_CONTROLS</B ></TT > and <TT CLASS="constant" ><B >LDAP_OPT_CLIENT_CONTROLS</B ></TT > require a list of controls, this means that the value must be an array of controls. A control consists of an <SPAN CLASS="emphasis" ><I CLASS="emphasis" >oid</I ></SPAN > identifying the control, an optional <SPAN CLASS="emphasis" ><I CLASS="emphasis" >value</I ></SPAN >, and an optional flag for <SPAN CLASS="emphasis" ><I CLASS="emphasis" >criticality</I ></SPAN >. In PHP a control is given by an array containing an element with the key <SPAN CLASS="emphasis" ><I CLASS="emphasis" >oid</I ></SPAN > and string value, and two optional elements. The optional elements are key <SPAN CLASS="emphasis" ><I CLASS="emphasis" >value</I ></SPAN > with string value and key <SPAN CLASS="emphasis" ><I CLASS="emphasis" >iscritical</I ></SPAN > with boolean value. <SPAN CLASS="emphasis" ><I CLASS="emphasis" >iscritical</I ></SPAN > defaults to <SPAN CLASS="emphasis" ><I CLASS="emphasis" ><TT CLASS="constant" ><B >FALSE</B ></TT ></I ></SPAN > if not supplied. See <A HREF="http://www.openldap.org/devel/cvsweb.cgi/~checkout~/doc/drafts/draft-ietf-ldapext-ldap-c-api-xx.txt" TARGET="_top" >draft-ietf-ldapext-ldap-c-api-xx.txt</A > for details. See also the second example below. </P ></DD ><DT ><CODE CLASS="parameter" >newval</CODE ></DT ><DD ><P > The new value for the specified <CODE CLASS="parameter" >option</CODE >. </P ></DD ></DL ></DIV > </P ></DIV ><DIV CLASS="refsect1" ><A NAME="AEN106072" ></A ><H2 >返回值</H2 ><P > 如果成功则返回 <TT CLASS="constant" ><B >TRUE</B ></TT >,失败则返回 <TT CLASS="constant" ><B >FALSE</B ></TT >。 </P ></DIV ><DIV CLASS="refsect1" ><A NAME="AEN106077" ></A ><H2 >范例</H2 ><P > <TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="EXAMPLE" ><TR ><TD ><DIV CLASS="example" ><A NAME="AEN106080" ></A ><P ><B >例 1. Set protocol version</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><code><font color="#000000"> <font color="#0000BB"><?php<br /></font><font color="#FF8000">// $ds is a valid link identifier for a directory server<br /></font><font color="#007700">if (</font><font color="#0000BB">ldap_set_option</font><font color="#007700">(</font><font color="#0000BB">$ds</font><font color="#007700">, </font><font color="#0000BB">LDAP_OPT_PROTOCOL_VERSION</font><font color="#007700">, </font><font color="#0000BB">3</font><font color="#007700">)) {<br /> echo </font><font color="#DD0000">"Using LDAPv3"</font><font color="#007700">;<br />} else {<br /> echo </font><font color="#DD0000">"Failed to set protocol version to 3"</font><font color="#007700">;<br />}<br /></font><font color="#0000BB">?></font> </font> </code></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE > <TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="EXAMPLE" ><TR ><TD ><DIV CLASS="example" ><A NAME="AEN106083" ></A ><P ><B >例 2. Set server controls</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><code><font color="#000000"> <font color="#0000BB"><?php<br /></font><font color="#FF8000">// $ds is a valid link identifier for a directory server<br />// control with no value<br /></font><font color="#0000BB">$ctrl1 </font><font color="#007700">= array(</font><font color="#DD0000">"oid" </font><font color="#007700">=> </font><font color="#DD0000">"1.2.752.58.10.1"</font><font color="#007700">, </font><font color="#DD0000">"iscritical" </font><font color="#007700">=> </font><font color="#0000BB">true</font><font color="#007700">);<br /></font><font color="#FF8000">// iscritical defaults to FALSE<br /></font><font color="#0000BB">$ctrl2 </font><font color="#007700">= array(</font><font color="#DD0000">"oid" </font><font color="#007700">=> </font><font color="#DD0000">"1.2.752.58.1.10"</font><font color="#007700">, </font><font color="#DD0000">"value" </font><font color="#007700">=> </font><font color="#DD0000">"magic"</font><font color="#007700">);<br /></font><font color="#FF8000">// try to set both controls<br /></font><font color="#007700">if (!</font><font color="#0000BB">ldap_set_option</font><font color="#007700">(</font><font color="#0000BB">$ds</font><font color="#007700">, </font><font color="#0000BB">LDAP_OPT_SERVER_CONTROLS</font><font color="#007700">, array(</font><font color="#0000BB">$ctrl1</font><font color="#007700">, </font><font color="#0000BB">$ctrl2</font><font color="#007700">))) {<br /> echo </font><font color="#DD0000">"Failed to set server controls"</font><font color="#007700">;<br />}<br /></font><font color="#0000BB">?></font> </font> </code></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE > </P ></DIV ><DIV CLASS="refsect1" ><A NAME="AEN106086" ></A ><H2 >注释</H2 ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >注意: </B > This function is only available when using OpenLDAP 2.x.x OR Netscape Directory SDK x.x. </P ></BLOCKQUOTE ></DIV ></DIV ><DIV CLASS="refsect1" ><A NAME="AEN106090" ></A ><H2 >参见</H2 ><P > <P ></P ><TABLE BORDER="0" ><TBODY ><TR ><TD ><A HREF="function.ldap-get-option.html" ><B CLASS="function" >ldap_get_option()</B ></A ></TD ></TR ></TBODY ></TABLE ><P ></P > </P ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="function.ldap-search.html" ACCESSKEY="P" >上一页</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >起始页</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="function.ldap-set-rebind-proc.html" ACCESSKEY="N" >下一页</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >ldap_search</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="ref.ldap.html" ACCESSKEY="U" >上一级</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >ldap_set_rebind_proc</TD ></TR ></TABLE ></DIV ></BODY ></HTML >