如何設(shè)置PHP put請(qǐng)求的超時(shí)

PHP
小樊
90
2024-07-31 13:36:10

在 PHP 中,可以通過(guò)設(shè)置 CURLOPT_TIMEOUTCURLOPT_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ò)誤信息。

0