⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 function.oci-bind-array-by-name.html

📁 php的帮助文档,涉及到PHP的案例和基本语法,以及实际应用内容
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html> <head>  <title>Binds PHP array to Oracle PL/SQL array by name</title>  <meta http-equiv="content-type" content="text/html; charset=UTF-8"> </head> <body><div style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="ref.oci8.html">OCI8 Functions</a></div> <div class="next" style="text-align: right; float: right;"><a href="function.oci-bind-by-name.html">oci_bind_by_name</a></div> <div class="up"><a href="ref.oci8.html">OCI8 Functions</a></div> <div class="home"><a href="index.html">PHP Manual</a></div></div><hr /><div id="function.oci-bind-array-by-name" class="refentry"> <div class="refnamediv">  <h1 class="refname">oci_bind_array_by_name</h1>  <p class="verinfo">(PHP 5 &gt;= 5.1.2, PECL oci8:1.2.0-1.2.4)</p><p class="refpurpose"><span class="refname">oci_bind_array_by_name</span> &mdash; <span class="dc-title">Binds PHP array to Oracle PL/SQL array by name</span></p> </div>  <div class="refsect1 description">  <h3 class="title">Description</h3>  <div class="methodsynopsis dc-description">   <span class="type">bool</span> <span class="methodname"><b><b>oci_bind_array_by_name</b></b></span>    ( <span class="methodparam"><span class="type">resource</span> <tt class="parameter">$statement</tt></span>   , <span class="methodparam"><span class="type">string</span> <tt class="parameter">$name</tt></span>   , <span class="methodparam"><span class="type">array</span> <tt class="parameter reference">&$var_array</tt></span>   , <span class="methodparam"><span class="type">int</span> <tt class="parameter">$max_table_length</tt></span>   [, <span class="methodparam"><span class="type">int</span> <tt class="parameter">$max_item_length</tt></span>   [, <span class="methodparam"><span class="type">int</span> <tt class="parameter">$type</tt></span>  ]] )</div>  <p class="para rdfs-comment">   Binds the PHP array <i><tt class="parameter">var_array</tt></i> to the Oracle   placeholder <i><tt class="parameter">name</tt></i>, which points to Oracle PL/SQL   array. Whether it will be used for input or output will be determined at   run-time.   </p> </div> <div class="refsect1 parameters">  <h3 class="title">Parameters</h3>  <p class="para">   <dl>    <dt>     <span class="term"><i><tt class="parameter">statement</tt></i></span>     <dd>      <p class="para">       A valid OCI statement identifier.      </p>     </dd>    </dt>    <dt>     <span class="term"><i><tt class="parameter">name</tt></i></span>     <dd>      <p class="para">       The Oracle placeholder.      </p>     </dd>    </dt>    <dt>     <span class="term"><i><tt class="parameter">var_array</tt></i></span>     <dd>      <p class="para">       An array.      </p>     </dd>    </dt>    <dt>     <span class="term"><i><tt class="parameter">max_table_length</tt></i></span>     <dd>      <p class="para">       Sets the maximum length both for incoming and result arrays.      </p>     </dd>    </dt>    <dt>     <span class="term"><i><tt class="parameter">max_item_length</tt></i></span>     <dd>      <p class="para">       Sets maximum length for array items. If not specified or equals to -1,       <b>oci_bind_array_by_name()</b> will use find the longest       element in the incoming array and will use it as maximum length for       array items.      </p>     </dd>    </dt>    <dt>     <span class="term"><i><tt class="parameter">type</tt></i></span>     <dd>      <p class="para">       Should be used to set the type of PL/SQL array items. See list of       available types below:      </p>      <p class="para">       <ul class="itemizedlist">        <li class="listitem">         <p class="para">          <b><tt>SQLT_NUM</tt></b> - for arrays of NUMBER.         </p>        </li>        <li class="listitem">         <p class="para">          <b><tt>SQLT_INT</tt></b> - for arrays of INTEGER (Note: INTEGER          it is actually a synonym for NUMBER(38), but          <b><tt>SQLT_NUM</tt></b> type won&#039;t work in this case even          though they are synonyms).         </p>        </li>        <li class="listitem">         <p class="para">          <b><tt>SQLT_FLT</tt></b> - for arrays of FLOAT.         </p>        </li>        <li class="listitem">         <p class="para">          <b><tt>SQLT_AFC</tt></b> - for arrays of CHAR.         </p>        </li>        <li class="listitem">         <p class="para">          <b><tt>SQLT_CHR</tt></b> - for arrays of VARCHAR2.         </p>        </li>        <li class="listitem">         <p class="para">          <b><tt>SQLT_VCS</tt></b> - for arrays of VARCHAR.         </p>        </li>        <li class="listitem">         <p class="para">          <b><tt>SQLT_AVC</tt></b> - for arrays of CHARZ.         </p>        </li>        <li class="listitem">         <p class="para">          <b><tt>SQLT_STR</tt></b> - for arrays of STRING.         </p>        </li>        <li class="listitem">         <p class="para">          <b><tt>SQLT_LVC</tt></b> - for arrays of LONG VARCHAR.         </p>        </li>       <li class="listitem">         <p class="para">          <b><tt>SQLT_ODT</tt></b> - for arrays of DATE.         </p>        </li>       </ul>      </p>     </dd>    </dt>   </dl>  </p> </div> <div class="refsect1 returnvalues">  <h3 class="title">Return Values</h3>  <p class="para">   Returns <b><tt>TRUE</tt></b> on success or <b><tt>FALSE</tt></b> on failure.  </p> </div> <div class="refsect1 examples">  <h3 class="title">Examples</h3>  <p class="para">   <div class="example">    <p><b>Example #1 <b>oci_bind_array_by_name()</b> example</b></p>    <div class="example-contents"><div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /><br />$c&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">oci_connect</span><span style="color: #007700">(</span><span style="color: #DD0000">"scott"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"tiger"</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$create&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"CREATE&nbsp;TABLE&nbsp;bind_example(name&nbsp;VARCHAR(20))"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$statement&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">oci_parse</span><span style="color: #007700">(</span><span style="color: #0000BB">$c</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$create</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">oci_execute</span><span style="color: #007700">(</span><span style="color: #0000BB">$statement</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$create_pkg&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"<br />CREATE&nbsp;OR&nbsp;REPLACE&nbsp;PACKAGE&nbsp;ARRAYBINDPKG1&nbsp;AS<br />&nbsp;&nbsp;TYPE&nbsp;ARRTYPE&nbsp;IS&nbsp;TABLE&nbsp;OF&nbsp;VARCHAR(20)&nbsp;INDEX&nbsp;BY&nbsp;BINARY_INTEGER;<br />&nbsp;&nbsp;PROCEDURE&nbsp;iobind(c1&nbsp;IN&nbsp;OUT&nbsp;ARRTYPE);<br />END&nbsp;ARRAYBINDPKG1;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$statement&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">oci_parse</span><span style="color: #007700">(</span><span style="color: #0000BB">$c</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$create_pkg</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">oci_execute</span><span style="color: #007700">(</span><span style="color: #0000BB">$statement</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$create_pkg_body&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"<br />CREATE&nbsp;OR&nbsp;REPLACE&nbsp;PACKAGE&nbsp;BODY&nbsp;ARRAYBINDPKG1&nbsp;AS<br />&nbsp;&nbsp;CURSOR&nbsp;CUR&nbsp;IS&nbsp;SELECT&nbsp;name&nbsp;FROM&nbsp;bind_example;<br />&nbsp;&nbsp;PROCEDURE&nbsp;iobind(c1&nbsp;IN&nbsp;OUT&nbsp;ARRTYPE)&nbsp;IS<br />&nbsp;&nbsp;&nbsp;&nbsp;BEGIN<br />&nbsp;&nbsp;&nbsp;&nbsp;FOR&nbsp;i&nbsp;IN&nbsp;1..5&nbsp;LOOP<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;INSERT&nbsp;INTO&nbsp;bind_example&nbsp;VALUES&nbsp;(c1(i));<br />&nbsp;&nbsp;&nbsp;&nbsp;END&nbsp;LOOP;<br />&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;NOT&nbsp;CUR%ISOPEN&nbsp;THEN<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OPEN&nbsp;CUR;<br />&nbsp;&nbsp;&nbsp;&nbsp;END&nbsp;IF;<br />&nbsp;&nbsp;&nbsp;&nbsp;FOR&nbsp;i&nbsp;IN&nbsp;REVERSE&nbsp;1..5&nbsp;LOOP<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FETCH&nbsp;CUR&nbsp;INTO&nbsp;c1(i);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;CUR%NOTFOUND&nbsp;THEN<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CLOSE&nbsp;CUR;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EXIT;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;END&nbsp;IF;<br />&nbsp;&nbsp;&nbsp;&nbsp;END&nbsp;LOOP;<br />&nbsp;&nbsp;END&nbsp;iobind;<br />END&nbsp;ARRAYBINDPKG1;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$statement&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">oci_parse</span><span style="color: #007700">(</span><span style="color: #0000BB">$c</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$create_pkg_body</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">oci_execute</span><span style="color: #007700">(</span><span style="color: #0000BB">$statement</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$statement&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">oci_parse</span><span style="color: #007700">(</span><span style="color: #0000BB">$c</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"BEGIN&nbsp;ARRAYBINDPKG1.iobind(:c1);&nbsp;END;"</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$array&nbsp;</span><span style="color: #007700">=&nbsp;array(</span><span style="color: #DD0000">"one"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"two"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"three"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"four"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"five"</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">oci_bind_array_by_name</span><span style="color: #007700">(</span><span style="color: #0000BB">$statement</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">":c1"</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$array</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">5</span><span style="color: #007700">,&nbsp;-</span><span style="color: #0000BB">1</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">SQLT_CHR</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">oci_execute</span><span style="color: #007700">(</span><span style="color: #0000BB">$statement</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">$array</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>    </div>   </div>  </p> </div> <div class="refsect1 notes">  <h3 class="title">Notes</h3>  <blockquote><p><b class="note">Note</b>:        This function is available since OCI8 release 1.2.   <br />  </p></blockquote> </div></div><hr /><div style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="ref.oci8.html">OCI8 Functions</a></div> <div class="next" style="text-align: right; float: right;"><a href="function.oci-bind-by-name.html">oci_bind_by_name</a></div> <div class="up"><a href="ref.oci8.html">OCI8 Functions</a></div> <div class="home"><a href="index.html">PHP Manual</a></div></div></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -