[英]PHP cURL timeout is not working
我有服務器問題。 我正在運行本地服務器(用於開發),我已將本地服務器從MAMP更改為XAMPP。 但是,在XAMPP上,cURL選項CURLOPT_TIMEOUT_MS
或CURLOPT_CONNECTTIMEOUT_MS
給出了下一個錯誤:
警告:curl_setopt()期望參數2為long,給定字符串
這是因為PHP還是cURL版本? 也許配置設置?
curl_setopt($this->ch, CURLOPT_CONNECTTIMEOUT_MS, 2500);
附加信息:
提前致謝。
編輯:似乎有一些關於錯誤和要設置的變量的混淆。 該錯誤表明參數2無效。 不是參數3 。 所以CURLOPT_CONNECTTIMEOUT_MS
似乎是個問題。
curl_setopt($this->ch, CURLOPT_CONNECTTIMEOUT_MS, 2500);
^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^
parameter: #1 #2 #3
有趣的事實: var_dump(CURLOPT_CONNECTTIMEOUT_MS);
顯示string(25) "CURLOPT_CONNECTTIMEOUT_MS"
。 就像錯誤狀態一樣,它是一個字符串而不是浮點數。
我有同樣的問題,這解決了我。 只需將此行添加到腳本的頂部即可。 它僅在尚未定義時定義缺失的常量。
if(!defined(CURLOPT_CONNECTTIMEOUT_MS))define('CURLOPT_CONNECTTIMEOUT_MS',156);
出於某種原因, CURLOPT_CONNECTTIMEOUT_MS
在您的PHP版本中定義不正確。 我會檢查你正在使用的PHP的任何分布,並找出它是否是一般錯誤。
正確的值是156
:你應該能夠使用它:
curl_setopt($this->ch, /*CURLOPT_CONNECTTIMEOUT_MS */ 156, 2500);
NB,你真的真的真的需要添加注釋解釋你為什么這樣做。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.