I’m having a server issue. I’m running a local server (for developing) and I’ve changed my local server from MAMP to XAMPP. However, on XAMPP, the cURL option CURLOPT_TIMEOUT_MS or CURLOPT_CONNECTTIMEOUT_MS gives me the next error:
Warning: curl_setopt() expects parameter 2 to be long, string given
Is this because of the PHP or cURL version? Maybe a configuration setting?
curl_setopt($this->ch, CURLOPT_CONNECTTIMEOUT_MS, 2500);
Additional information:
- OSX 10.6.8
- PHP 5.3.1
- cURL 7.19.7
Thanks in advance.
Edit: There seems to be some confusion about the error and the variable to set. The error states that parameter 2 is invalid. Not parameter 3. So the CURLOPT_CONNECTTIMEOUT_MS seems to be the issue.
curl_setopt($this->ch, CURLOPT_CONNECTTIMEOUT_MS, 2500);
^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^
parameter: #1 #2 #3
Fun fact: var_dump(CURLOPT_CONNECTTIMEOUT_MS); displays string(25) "CURLOPT_CONNECTTIMEOUT_MS". Just like the error states, it’s a string instead of a float.
For some reason,
CURLOPT_CONNECTTIMEOUT_MSis defined incorrectly in your version of PHP. I’d check with whatever distribution of PHP you’re using and find out whether it’s a general bug.The correct value is
156: you should be able to use this instead:NB that you really really really need to add comments explaining why you’re doing this.