<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>Batch and execute modifications on an LDAP entry</title> </head> <body><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="function.ldap-mod-replace.html">ldap_mod_replace</a></div> <div class="next" style="text-align: right; float: right;"><a href="function.ldap-modify.html">ldap_modify</a></div> <div class="up"><a href="ref.ldap.html">LDAP Functions</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div><hr /><div id="function.ldap-modify-batch" class="refentry"> <div class="refnamediv"> <h1 class="refname">ldap_modify_batch</h1> <p class="verinfo">(PHP 5.4 >= 5.4.26, PHP 5.5 >= 5.5.10, PHP 5.6 >= 5.6.0, PHP 7)</p><p class="refpurpose"><span class="refname">ldap_modify_batch</span> — <span class="dc-title">Batch and execute modifications on an LDAP entry</span></p> </div> <div class="refsect1 description" id="refsect1-function.ldap-modify-batch-description"> <h3 class="title">Description</h3> <div class="methodsynopsis dc-description"> <span class="type">bool</span> <span class="methodname"><strong>ldap_modify_batch</strong></span> ( <span class="methodparam"><span class="type">resource</span> <code class="parameter">$link_identifier</code></span> , <span class="methodparam"><span class="type">string</span> <code class="parameter">$dn</code></span> , <span class="methodparam"><span class="type">array</span> <code class="parameter">$entry</code></span> [, <span class="methodparam"><span class="type">array</span> <code class="parameter">$serverctrls</code></span> ] )</div> <p class="para rdfs-comment"> Modifies an existing entry in the LDAP directory. Allows detailed specification of the modifications to perform. </p> </div> <div class="refsect1 parameters" id="refsect1-function.ldap-modify-batch-parameters"> <h3 class="title">Parameters</h3> <p class="para"> <dl> <dt> <code class="parameter">link_identifier</code></dt> <dd> <p class="para"> An LDAP link identifier, returned by <span class="function"><a href="function.ldap-connect.html" class="function">ldap_connect()</a></span>. </p> </dd> <dt> <code class="parameter">dn</code></dt> <dd> <p class="para"> The distinguished name of an LDAP entity. </p> </dd> <dt> <code class="parameter">entry</code></dt> <dd> <p class="para"> An array that specifies the modifications to make. Each entry in this array is an associative array with two or three keys: <em>attrib</em> maps to the name of the attribute to modify, <em>modtype</em> maps to the type of modification to perform, and (depending on the type of modification) <em>values</em> maps to an array of attribute values relevant to the modification. </p> <p class="para"> Possible values for <em>modtype</em> include: <dl> <dt> <strong><code>LDAP_MODIFY_BATCH_ADD</code></strong></dt> <dd> <p class="para"> Each value specified through <em>values</em> is added (as an additional value) to the attribute named by <em>attrib</em>. </p> </dd> <dt> <strong><code>LDAP_MODIFY_BATCH_REMOVE</code></strong></dt> <dd> <p class="para"> Each value specified through <em>values</em> is removed from the attribute named by <em>attrib</em>. Any value of the attribute not contained in the <em>values</em> array will remain untouched. </p> </dd> <dt> <strong><code>LDAP_MODIFY_BATCH_REMOVE_ALL</code></strong></dt> <dd> <p class="para"> All values are removed from the attribute named by <em>attrib</em>. A <em>values</em> entry must not be provided. </p> </dd> <dt> <strong><code>LDAP_MODIFY_BATCH_REPLACE</code></strong></dt> <dd> <p class="para"> All current values of the attribute named by <em>attrib</em> are replaced with the values specified through <em>values</em>. </p> </dd> </dl> </p> <p class="para"> Note that any value for <em>attrib</em> must be a string, any value for <em>values</em> must be an array of strings, and any value for <em>modtype</em> must be one of the LDAP_MODIFY_BATCH_* constants listed above. </p> </dd> </dl> </p> </div> <div class="refsect1 returnvalues" id="refsect1-function.ldap-modify-batch-returnvalues"> <h3 class="title">Return Values</h3> <p class="para"> Returns <strong><code>TRUE</code></strong> on success or <strong><code>FALSE</code></strong> on failure. </p> </div> <div class="refsect1 examples" id="refsect1-function.ldap-modify-batch-examples"> <h3 class="title">Examples</h3> <p class="para"> <div class="example" id="example-5530"> <p><strong>Example #1 Add a telephone number to a contact</strong></p> <div class="example-contents"> <div class="phpcode"><code><span style="color: #000000"> <span style="color: #0000BB"><?php<br />$dn </span><span style="color: #007700">= </span><span style="color: #DD0000">"cn=John Smith,ou=Wizards,dc=example,dc=com"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$modifs </span><span style="color: #007700">= [<br /> [<br /> </span><span style="color: #DD0000">"attrib" </span><span style="color: #007700">=> </span><span style="color: #DD0000">"telephoneNumber"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"modtype" </span><span style="color: #007700">=> </span><span style="color: #0000BB">LDAP_MODIFY_BATCH_ADD</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"values" </span><span style="color: #007700">=> [</span><span style="color: #DD0000">"+1 555 555 1717"</span><span style="color: #007700">],<br /> ],<br />];<br /></span><span style="color: #0000BB">ldap_modify_batch</span><span style="color: #007700">(</span><span style="color: #0000BB">$connection</span><span style="color: #007700">, </span><span style="color: #0000BB">$dn</span><span style="color: #007700">, </span><span style="color: #0000BB">$modifs</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?></span> </span> </code></div> </div> </div> <div class="example" id="example-5531"> <p><strong>Example #2 Rename a user</strong></p> <div class="example-contents"> <div class="phpcode"><code><span style="color: #000000"> <span style="color: #0000BB"><?php<br />$dn </span><span style="color: #007700">= </span><span style="color: #DD0000">"cn=John Smith,ou=Wizards,dc=example,dc=com"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$modifs </span><span style="color: #007700">= [<br /> [<br /> </span><span style="color: #DD0000">"attrib" </span><span style="color: #007700">=> </span><span style="color: #DD0000">"sn"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"modtype" </span><span style="color: #007700">=> </span><span style="color: #0000BB">LDAP_MODIFY_BATCH_REPLACE</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"values" </span><span style="color: #007700">=> [</span><span style="color: #DD0000">"Smith-Jones"</span><span style="color: #007700">],<br /> ],<br /> [<br /> </span><span style="color: #DD0000">"attrib" </span><span style="color: #007700">=> </span><span style="color: #DD0000">"givenName"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"modtype" </span><span style="color: #007700">=> </span><span style="color: #0000BB">LDAP_MODIFY_BATCH_REPLACE</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"values" </span><span style="color: #007700">=> [</span><span style="color: #DD0000">"Jack"</span><span style="color: #007700">],<br /> ],<br />];<br /></span><span style="color: #0000BB">ldap_modify_batch</span><span style="color: #007700">(</span><span style="color: #0000BB">$connection</span><span style="color: #007700">, </span><span style="color: #0000BB">$dn</span><span style="color: #007700">, </span><span style="color: #0000BB">$modifs</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">ldap_rename</span><span style="color: #007700">(</span><span style="color: #0000BB">$connection</span><span style="color: #007700">, </span><span style="color: #0000BB">$dn</span><span style="color: #007700">, </span><span style="color: #DD0000">"cn=Jack Smith-Jones"</span><span style="color: #007700">, </span><span style="color: #0000BB">NULL</span><span style="color: #007700">, </span><span style="color: #0000BB">TRUE</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?></span> </span> </code></div> </div> </div> <div class="example" id="example-5532"> <p><strong>Example #3 Add two e-mail addresses to a user</strong></p> <div class="example-contents"> <div class="phpcode"><code><span style="color: #000000"> <span style="color: #0000BB"><?php<br />$dn </span><span style="color: #007700">= </span><span style="color: #DD0000">"cn=Jack Smith-Jones,ou=Wizards,dc=example,dc=com"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$modifs </span><span style="color: #007700">= [<br /> [<br /> </span><span style="color: #DD0000">"attrib" </span><span style="color: #007700">=> </span><span style="color: #DD0000">"mail"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"modtype" </span><span style="color: #007700">=> </span><span style="color: #0000BB">LDAP_MODIFY_BATCH_ADD</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"values" </span><span style="color: #007700">=> [<br /> </span><span style="color: #DD0000">"jack.smith@example.com"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"jack.smith-jones@example.com"</span><span style="color: #007700">,<br /> ],<br /> ],<br />];<br /></span><span style="color: #0000BB">ldap_modify_batch</span><span style="color: #007700">(</span><span style="color: #0000BB">$connection</span><span style="color: #007700">, </span><span style="color: #0000BB">$dn</span><span style="color: #007700">, </span><span style="color: #0000BB">$modifs</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?></span> </span> </code></div> </div> </div> <div class="example" id="example-5533"> <p><strong>Example #4 Change a user's password</strong></p> <div class="example-contents"> <div class="phpcode"><code><span style="color: #000000"> <span style="color: #0000BB"><?php<br />$dn </span><span style="color: #007700">= </span><span style="color: #DD0000">"cn=Jack Smith-Jones,ou=Wizards,dc=example,dc=com"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$modifs </span><span style="color: #007700">= [<br /> [<br /> </span><span style="color: #DD0000">"attrib" </span><span style="color: #007700">=> </span><span style="color: #DD0000">"userPassword"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"modtype" </span><span style="color: #007700">=> </span><span style="color: #0000BB">LDAP_MODIFY_BATCH_REMOVE</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"values" </span><span style="color: #007700">=> [</span><span style="color: #DD0000">"Tr0ub4dor&3"</span><span style="color: #007700">],<br /> ],<br /> [<br /> </span><span style="color: #DD0000">"attrib" </span><span style="color: #007700">=> </span><span style="color: #DD0000">"userPassword"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"modtype" </span><span style="color: #007700">=> </span><span style="color: #0000BB">LDAP_MODIFY_BATCH_ADD</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"values" </span><span style="color: #007700">=> [</span><span style="color: #DD0000">"correct horse battery staple"</span><span style="color: #007700">],<br /> ],<br />];<br /></span><span style="color: #0000BB">ldap_modify_batch</span><span style="color: #007700">(</span><span style="color: #0000BB">$connection</span><span style="color: #007700">, </span><span style="color: #0000BB">$dn</span><span style="color: #007700">, </span><span style="color: #0000BB">$modifs</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?></span> </span> </code></div> </div> </div> <div class="example" id="example-5534"> <p><strong>Example #5 Change a user's password (Active Directory)</strong></p> <div class="example-contents"> <div class="phpcode"><code><span style="color: #000000"> <span style="color: #0000BB"><?php<br /></span><span style="color: #007700">function </span><span style="color: #0000BB">adifyPw</span><span style="color: #007700">(</span><span style="color: #0000BB">$pw</span><span style="color: #007700">)<br />{<br /> return </span><span style="color: #0000BB">iconv</span><span style="color: #007700">(</span><span style="color: #DD0000">"UTF-8"</span><span style="color: #007700">, </span><span style="color: #DD0000">"UTF-16LE"</span><span style="color: #007700">, </span><span style="color: #DD0000">'"' </span><span style="color: #007700">. </span><span style="color: #0000BB">$pw </span><span style="color: #007700">. </span><span style="color: #DD0000">'"'</span><span style="color: #007700">);<br />}<br /><br /></span><span style="color: #0000BB">$dn </span><span style="color: #007700">= </span><span style="color: #DD0000">"cn=Jack Smith-Jones,ou=Wizards,dc=ad,dc=example,dc=com"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$modifs </span><span style="color: #007700">= [<br /> [<br /> </span><span style="color: #DD0000">"attrib" </span><span style="color: #007700">=> </span><span style="color: #DD0000">"unicodePwd"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"modtype" </span><span style="color: #007700">=> </span><span style="color: #0000BB">LDAP_MODIFY_BATCH_REMOVE</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"values" </span><span style="color: #007700">=> [</span><span style="color: #0000BB">adifyPw</span><span style="color: #007700">(</span><span style="color: #DD0000">"Tr0ub4dor&3"</span><span style="color: #007700">)],<br /> ],<br /> [<br /> </span><span style="color: #DD0000">"attrib" </span><span style="color: #007700">=> </span><span style="color: #DD0000">"unicodePwd"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"modtype" </span><span style="color: #007700">=> </span><span style="color: #0000BB">LDAP_MODIFY_BATCH_ADD</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">"values" </span><span style="color: #007700">=> [</span><span style="color: #0000BB">adifyPw</span><span style="color: #007700">(</span><span style="color: #DD0000">"correct horse battery staple"</span><span style="color: #007700">)],<br /> ],<br />];<br /></span><span style="color: #0000BB">ldap_modify_batch</span><span style="color: #007700">(</span><span style="color: #0000BB">$connection</span><span style="color: #007700">, </span><span style="color: #0000BB">$dn</span><span style="color: #007700">, </span><span style="color: #0000BB">$modifs</span><span style="color: #007700">);</span> </span> </code></div> </div> </div> </p> </div> </div><hr /><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="function.ldap-mod-replace.html">ldap_mod_replace</a></div> <div class="next" style="text-align: right; float: right;"><a href="function.ldap-modify.html">ldap_modify</a></div> <div class="up"><a href="ref.ldap.html">LDAP Functions</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div></body></html>