(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 => 'http://www.w3cschool.cc/', CURLOPT_HEADER => false );curl_setopt_array($ch, $options);//抓取URL並把它傳遞給瀏覽器curl_exec($ch);// 關閉cURL資源,並且釋放系統資源curl_close($ch);?>
早於PHP 5.1.3這個函數可以做以下模擬:
我們對curl_setopt_array()的等價實現
<?phpif (!function_exists('curl_setopt_array')) { function curl_setopt_array(&$ch, $curl_options) { foreach ($curl_options as $option => $value) { if (!curl_setopoption, $value )) { return false; } } return true; }}?>
注意:就curl_setopt()來說,傳遞一個陣列到CURLOPT_POST將會把資料以multipart/form-data的方式編碼,然而傳遞一個URL-encoded字串將會以application/x-www-form-urlencoded的方式對資料進行編碼。