PHP curl_setopt_array 函数
PHP curl_setopt_array() 函数用于为 cURL 传输会话批量设置选项
( PHP 5 >= 5.1.3 )
范例
bool curl_setopt_array ( resource $ch , array $options )
为 cURL 传输会话批量设置选项
这个函数对于需要设置大量的 cURL 选项是非常有用的,不需要重复地调用 curl_setopt()
注意
就 curl_setopt() 来说,传递一个数组到 CURLOPT_POST 将会把数据以 multipart/form-data 的方式编码
然而传递一个 URL-encoded 字符串将会以 application/x-www-form-urlencoded 的方式对数据进行编码
参数
参数 | 说明 |
---|---|
ch | 由 curl_init() 返回的 cURL 句柄 |
options | 一个 array 用来确定将被设置的选项及其值 数组的键值必须是一个有效的 curl_setopt() 常量或者是它们对等的整数值 |
返回值
如果全部的选项都被成功设置,返回 TRUE
如果一个选项不能被成功设置,马上返回 FALSE,忽略其后的任何在 options 数组中的选项
范例
初始化一个新的 cURL 并抓取一个 web 页面
<?php // 创建一个新cURL资源 $ch = curl_init(); // 设置URL和相应的选项 $options = array(CURLOPT_URL => 'https://www.twle.cn/', CURLOPT_HEADER => false ); curl_setopt_array($ch, $options); // 抓取URL并把它传递给浏览器 curl_exec($ch); // 关闭cURL资源,并且释放系统资源 curl_close($ch);
在 PHP 5.1.3 之前可以像下面这样模拟 curl_setopt_array() 的等价实现
<?php if (!function_exists('curl_setopt_array')) { function curl_setopt_array(&$ch, $curl_options) { foreach ($curl_options as $option => $value) { if (!curl_setopt($ch, $option, $value)) { return false; } } return true; } }