mirror of
https://github.com/fofolee/uTools-Manuals.git
synced 2025-06-18 13:57:03 +08:00
118 lines
8.2 KiB
HTML
118 lines
8.2 KiB
HTML
<!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>为 cURL 传输会话批量设置选项</title>
|
||
</head>
|
||
<body class="docs"><div id="layout">
|
||
<div id="layout-content"><div id="function.curl-setopt-array" class="refentry">
|
||
<div class="refnamediv">
|
||
<h1 class="refname">curl_setopt_array</h1>
|
||
<p class="verinfo">(PHP 5 >= 5.1.3, PHP 7)</p><p class="refpurpose"><span class="refname">curl_setopt_array</span> — <span class="dc-title">为 cURL 传输会话批量设置选项</span></p>
|
||
|
||
</div>
|
||
<div class="refsect1 description" id="refsect1-function.curl-setopt-array-description">
|
||
<h3 class="title">说明</h3>
|
||
<div class="methodsynopsis dc-description">
|
||
<span class="methodname"><strong>curl_setopt_array</strong></span>
|
||
( <span class="methodparam"><span class="type">resource</span> <code class="parameter">$ch</code></span>
|
||
, <span class="methodparam"><span class="type">array</span> <code class="parameter">$options</code></span>
|
||
) : <span class="type">bool</span></div>
|
||
|
||
<p class="para rdfs-comment">
|
||
为 cURL 传输会话批量设置选项。这个函数对于需要设置大量的 cURL 选项是非常有用的,不需要重复地调用 <span class="function"><a href="curl_setopt.html" class="function">curl_setopt()</a></span>。
|
||
</p>
|
||
</div>
|
||
|
||
|
||
<div class="refsect1 parameters" id="refsect1-function.curl-setopt-array-parameters">
|
||
<h3 class="title">参数</h3>
|
||
<p class="para">
|
||
<dl>
|
||
|
||
<dt>
|
||
<code class="parameter">ch</code>
|
||
</dt>
|
||
<dd>
|
||
<p class="para">由 <span class="function"><a href="curl_init.html" class="function">curl_init()</a></span> 返回的 cURL 句柄。</p></dd>
|
||
|
||
|
||
<dt>
|
||
<code class="parameter">options</code></dt>
|
||
|
||
<dd>
|
||
|
||
<p class="para">
|
||
一个 <span class="type"><a href="language.types.array.html" class="type array">array</a></span> 用来确定将被设置的选项及其值。数组的键值必须是一个有效的<span class="function"><a href="curl_setopt.html" class="function">curl_setopt()</a></span>常量或者是它们对等的整数值。
|
||
</p>
|
||
</dd>
|
||
|
||
|
||
</dl>
|
||
|
||
</p>
|
||
</div>
|
||
|
||
|
||
<div class="refsect1 returnvalues" id="refsect1-function.curl-setopt-array-returnvalues">
|
||
<h3 class="title">返回值</h3>
|
||
<p class="para">
|
||
如果全部的选项都被成功设置,返回<strong><code>TRUE</code></strong>。如果一个选项不能被成功设置,马上返回<strong><code>FALSE</code></strong>,忽略其后的任何在<code class="parameter">options</code>数组中的选项。
|
||
</p>
|
||
</div>
|
||
|
||
|
||
<div class="refsect1 examples" id="refsect1-function.curl-setopt-array-examples">
|
||
<h3 class="title">范例</h3>
|
||
<p class="para">
|
||
<div class="example" id="example-5250">
|
||
<p><strong>Example #1
|
||
初始化新的 cURL 会话并抓取 web 页面
|
||
</strong></p>
|
||
<div class="example-contents">
|
||
<div class="phpcode"><pre><span style="color: #000000">
|
||
<span style="color: #0000BB"><?php<br /></span><span style="color: #FF8000">// 创建一个新 cURL 资源<br /></span><span style="color: #0000BB">$ch </span><span style="color: #007700">= </span><span style="color: #0000BB">curl_init</span><span style="color: #007700">();<br /><br /></span><span style="color: #FF8000">// 设置 URL 和相应的选项<br /></span><span style="color: #0000BB">$options </span><span style="color: #007700">= array(</span><span style="color: #0000BB">CURLOPT_URL </span><span style="color: #007700">=> </span><span style="color: #DD0000">'http://www.example.com/'</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">CURLOPT_HEADER </span><span style="color: #007700">=> </span><span style="color: #0000BB">false<br /> </span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">curl_setopt_array</span><span style="color: #007700">(</span><span style="color: #0000BB">$ch</span><span style="color: #007700">, </span><span style="color: #0000BB">$options</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// 抓取 URL 并把它传递给浏览器<br /></span><span style="color: #0000BB">curl_exec</span><span style="color: #007700">(</span><span style="color: #0000BB">$ch</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// 关闭 cURL 资源,并且释放系统资源<br /></span><span style="color: #0000BB">curl_close</span><span style="color: #007700">(</span><span style="color: #0000BB">$ch</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?></span>
|
||
</span>
|
||
</pre></div>
|
||
</div>
|
||
|
||
</div>
|
||
</p>
|
||
<p class="para">
|
||
早于PHP 5.1.3这个函数可以做如下模拟:
|
||
</p>
|
||
<p class="para">
|
||
<div class="example" id="example-5251">
|
||
<p><strong>Example #2 我们对<span class="function"><strong>curl_setopt_array()</strong></span>的等价实现</strong></p>
|
||
<div class="example-contents">
|
||
<div class="phpcode"><pre><span style="color: #000000">
|
||
<span style="color: #0000BB"><?php<br /></span><span style="color: #007700">if (!</span><span style="color: #0000BB">function_exists</span><span style="color: #007700">(</span><span style="color: #DD0000">'curl_setopt_array'</span><span style="color: #007700">)) {<br /> function </span><span style="color: #0000BB">curl_setopt_array</span><span style="color: #007700">(&</span><span style="color: #0000BB">$ch</span><span style="color: #007700">, </span><span style="color: #0000BB">$curl_options</span><span style="color: #007700">)<br /> {<br /> foreach (</span><span style="color: #0000BB">$curl_options </span><span style="color: #007700">as </span><span style="color: #0000BB">$option </span><span style="color: #007700">=> </span><span style="color: #0000BB">$value</span><span style="color: #007700">) {<br /> if (!</span><span style="color: #0000BB">curl_setopt</span><span style="color: #007700">(</span><span style="color: #0000BB">$ch</span><span style="color: #007700">, </span><span style="color: #0000BB">$option</span><span style="color: #007700">, </span><span style="color: #0000BB">$value</span><span style="color: #007700">)) {<br /> return </span><span style="color: #0000BB">false</span><span style="color: #007700">;<br /> } <br /> }<br /> return </span><span style="color: #0000BB">true</span><span style="color: #007700">;<br /> }<br />}<br /></span><span style="color: #0000BB">?></span>
|
||
</span>
|
||
</pre></div>
|
||
</div>
|
||
|
||
</div>
|
||
</p>
|
||
</div>
|
||
|
||
|
||
<div class="refsect1 notes" id="refsect1-function.curl-setopt-array-notes">
|
||
<h3 class="title">注释</h3>
|
||
<blockquote class="note"><p><strong class="note">Note</strong>:
|
||
<p class="para">
|
||
就<span class="function"><a href="curl_setopt.html" class="function">curl_setopt()</a></span>来说,传递一个数组到<strong><code>CURLOPT_POST</code></strong>将会把数据以<em class="emphasis">multipart/form-data</em>的方式编码,然而传递一个URL-encoded字符串将会以<em class="emphasis">application/x-www-form-urlencoded</em>的方式对数据进行编码。
|
||
</p>
|
||
</p></blockquote>
|
||
</div>
|
||
|
||
|
||
<div class="refsect1 seealso" id="refsect1-function.curl-setopt-array-seealso">
|
||
<h3 class="title">参见</h3>
|
||
<p class="para">
|
||
<ul class="simplelist">
|
||
<li class="member"><span class="function"><a href="curl_setopt.html" class="function" rel="rdfs-seeAlso">curl_setopt()</a> - 设置 cURL 传输选项</span></li>
|
||
</ul>
|
||
</p>
|
||
</div>
|
||
|
||
</div></div></div></body></html> |