【问题标题】:cURL PHP request headers with variables not working带有变量的 cURL PHP 请求标头不起作用
【发布时间】:2018-04-03 04:51:30
【问题描述】:

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

作为一个例子(这个可行):

$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";

【问题讨论】:

    标签: php curl request-headers


    【解决方案1】:

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

    【讨论】:

    • 处理请求并没有真正的问题,只是我需要正确的语法来在标头中使用变量(在 PHP 中)。
    • mykoman 这没有回答问题。 Y.Terz 没有问过他可以用什么其他库来处理标题,但是如何解决他在使用 php 函数时遇到的问题
    【解决方案2】:

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

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

    【讨论】:

    • 你没有在你的头数组中使用任何变量,所以它并没有真正的帮助。
    猜你喜欢
    • 2023-03-15
    • 1970-01-01
    • 1970-01-01
    • 2013-08-03
    • 2017-10-18
    • 1970-01-01
    • 2016-11-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多