cURL PHP请求标头,变量不起作用

时间:2017-10-22 15:25:46

标签: php curl request-headers

所以我想发布一些标题,但我在使用变量时遇到了麻烦。

作为一个例子(这是有效的):

$headers = array();
...
$headers[] = "Content-Length: 96";
...
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

但我想要这个(显然不起作用):

$arr = "string-with-a-length-of-108";
$headers = array();
...
$headers[] = "Content-Length: ".(strlen($arr)-12);
...
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

认为这是一个简单的解决方法,但我不知道为什么这不起作用。提前谢谢。

修改

好的我修好了,如果我执行以下操作就可以了。

$length = strlen($arr)-12;
...
$headers[] = "Content-Length: $length";

2 个答案:

答案 0 :(得分:0)

如果可以,我建议您使用邮递员[https://www.getpostman.com/postman]来处理您的cURL请求。它非常易于使用。

答案 1 :(得分:0)

我还认为第二个应该可以工作,检查我的一些代码,我发现我发送这样的标题,检查这是否有帮助:

curl_setopt ( $ch, CURLOPT_HTTPHEADER, Array (
                    "Content-Type: application/x-www-form-urlencoded; charset=ISO-8859-1" ,
                    "Accept-Encoding: gzip"         
            ) );