(PHP 5 >= 5.1.3, PHP 7)
curl_setopt_array — Belirtilen cURL oturumuna çok sayıda seçenek atar
$ct
, array $seçenekler
) : boolBelirtilen cURL oturumuna çok sayıda seçenek atar. curl_setopt() işlevini defalarca kullanmak yerine çok sayıda seçeneği bir kerede atamak için yararlıdır.
ct
curl_init() işlevinden dönen bir cURL tanıtıcısı.
seçenekler
Atanacak seçenekleri ve değerlerini içeren dizi. Ahahtarlar geçerli curl_setopt() sabitleri veya bunların sayısal eşdeğerleri olmalıdır.
Belirtilen seçeneklerin tümü atanabilmişe TRUE
döner. Bir seçenek
başarıyla atanamazsa diğer seçenekler atanmaksızın işlev FALSE
ile
döner.
Örnek 1 - Yeni bir cURL oturumunun ilklendirilmesi ve bir HTML sayfasının alınması
<?php
// Yeni bir cURL özkaynağı oluşturalım
$ct = curl_init();
// URL'yi ve ilgili seçenekleri belirtelim
$options = array(CURLOPT_URL => 'http://www.example.com/',
CURLOPT_HEADER => false
);
curl_setopt_array($ct, $options);
// URL'yi tarayıcıya aktaralım
curl_exec($ct);
// cURL özkaynağını kapatıp sistem özkaynaklarını serbest bırakalım
curl_close($ct);
?>
PHP 5.1.4 öncesinde bu işlev şöyle taklit edilebilirdi:
Örnek 2 - curl_setopt_array() için kendi gerçeklenimimiz
<?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;
}
}
?>
Bilginize:
curl_setopt() işlevinde olduğu gibi,
CURLOPT_POSTFIELDS
seçeneğine bir dizinin aktarılması verinin multipart/form-data olarak kodlanmasına, bir URL kodlu dizge atanması ise verinin application/x-www-form-urlencoded olarak kodlanmasına sebep olur.