PHP 教程
(PHP 5 >= 5.1.3)
curl_setopt_array — 為 cURL 傳輸會(huì)話批量設(shè)置選項(xiàng)。
bool curl_setopt_array ( resource $ch , array $options )
為 cURL 傳輸會(huì)話批量設(shè)置選項(xiàng)。這個(gè)函數(shù)對(duì)于需要設(shè)置大量的 cURL 選項(xiàng)是非常有用的,不需要重復(fù)地調(diào)用 curl_setopt()。
ch
由 curl_init() 返回的 cURL 句柄。
options
一個(gè) array 用來確定將被設(shè)置的選項(xiàng)及其值。數(shù)組的鍵值必須是一個(gè)有效的 curl_setopt() 常量或者是它們對(duì)等的整數(shù)值。
如果全部的選項(xiàng)都被成功設(shè)置,返回TRUE。如果一個(gè)選項(xiàng)不能被成功設(shè)置,馬上返回 FALSE,忽略其后的任何在 options 數(shù)組中的選項(xiàng)。
初始化一個(gè)新的 cURL 會(huì)話并抓取一個(gè) web 頁(yè)面。
早于PHP 5.1.3這個(gè)函數(shù)可以做如下模擬:
我們對(duì) curl_setopt_array() 的等價(jià)實(shí)現(xiàn)
<?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() 來說,傳遞一個(gè)數(shù)組到 CURLOPT_POST 將會(huì)把數(shù)據(jù)以 multipart/form-data 的方式編碼,然而傳遞一個(gè) URL-encoded 字符串將會(huì)以 application/x-www-form-urlencoded 的方式對(duì)數(shù)據(jù)進(jìn)行編碼。