在 PHP 中,可以通過(guò)設(shè)置 CURLOPT_TIMEOUT
和 CURLOPT_CONNECTTIMEOUT
選項(xiàng)來(lái)設(shè)置 PUT 請(qǐng)求的超時(shí)時(shí)間。以下是一個(gè)示例代碼:
$ch = curl_init();
$url = 'http://example.com/api/resource';
$data = array('name' => 'John', 'age' => 30);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($ch, CURLOPT_TIMEOUT, 30); // 設(shè)置請(qǐng)求超時(shí)時(shí)間為 30 秒
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); // 設(shè)置連接超時(shí)時(shí)間為 10 秒
$response = curl_exec($ch);
if ($response === false) {
echo 'Error: ' . curl_error($ch);
} else {
echo $response;
}
curl_close($ch);
在上面的示例中,CURLOPT_TIMEOUT
選項(xiàng)設(shè)置了請(qǐng)求超時(shí)時(shí)間為 30 秒,CURLOPT_CONNECTTIMEOUT
選項(xiàng)設(shè)置了連接超時(shí)時(shí)間為 10 秒。當(dāng)請(qǐng)求超時(shí)或連接超時(shí)時(shí),curl_exec()
函數(shù)會(huì)返回 false
,可以通過(guò) curl_error()
函數(shù)獲取錯(cuò)誤信息。