首页 >后端开发 >php教程 >如何在 cURL POST 请求中发送多个图像?

如何在 cURL POST 请求中发送多个图像?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-02 23:21:30403浏览

How to Send Multiple Images in a cURL POST Request?

在 cURL POST 请求中使用数组

在尝试使用 cURL 发送图像数组时,用户可能会遇到仅第一个图像的问题传输数组值。这个问题探讨了如何纠正这个问题。

原始代码在数组结构中似乎有一个小缺陷。要解决此问题,建议使用 http_build_query 正确格式化数组:

<code class="php">$fields = array(
    'username' => "annonymous",
    'api_key' => urlencode("1234"),
    'images' => array(
        urlencode(base64_encode('image1')),
        urlencode(base64_encode('image2'))
    )
);

$fields_string = http_build_query($fields);</code>

此修改可确保数组正确编码为查询字符串。下面更新的代码包含了此更改:

<code class="php">extract($_POST);

$url = 'http://api.example.com/api';
$fields = array(
    'username' => "annonymous",
    'api_key' => urlencode("1234"),
    'images' => array(
        urlencode(base64_encode('image1')),
        urlencode(base64_encode('image2'))
    )
);

$fields_string = http_build_query($fields);

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string);

$result = curl_exec($ch);
echo $result;

curl_close($ch);</code>

使用此更新的代码,图像数组将在​​ POST 请求中正确发送。 API 将按预期接收两个图像。

以上是如何在 cURL POST 请求中发送多个图像?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn