PHP curl_setopt_array函数

PHP Calendar 参考手册 PHP cURL参考手册

(PHP 5 >= 5.1.3)

curl_setopt_array — 为 cURL 传输会话批量设置选项。


说明

bool curl_setopt_array ( resource $ch , array $options )

为 cURL 传输会话批量设置选项。这个函数对于需要设置大量的 cURL 选项是非常有用的,不需要重复地调用 curl_setopt()。


参数

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.icodebang.com',
 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;
 }
}
?>

注意:就 curl_setopt() 来说,传递一个数组到 CURLOPT_POST 将会把数据以 multipart/form-data 的方式编码,然而传递一个 URL-encoded 字符串将会以 application/x-www-form-urlencoded 的方式对数据进行编码。


PHP Calendar 参考手册 PHP cURL参考手册

0 个评论

要回复文章请先登录注册