You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

将带PUT方法与-F选项的有效cURL命令转换为PHP cURL代码

完整转换后的PHP cURL代码

我帮你把这条可运行的cURL命令完整转换成PHP代码了,每个参数都严格对应原命令的配置,直接就能用:

<?php
// 假设你的代理常量已经定义
define('PROXY_MOBILE_DE', 'api.test.sandbox.mobile.de:8080');

$ch = curl_init();

// 目标URL
$url = 'https://services.mobile.de/seller-api/sellers/1086/ads/943627/images';

// 配置cURL参数
curl_setopt_array($ch, [
    // 对应原命令的 -k:忽略SSL证书验证
    CURLOPT_SSL_VERIFYPEER => false,
    // 对应原命令的 -v:开启 verbose 模式(调试用,不需要可设为false)
    CURLOPT_VERBOSE => true,
    // 对应原命令的 -x:设置代理
    CURLOPT_PROXY => PROXY_MOBILE_DE,
    // 对应原命令的 -u:设置用户名和密码
    CURLOPT_USERPWD => 'xxx:yyy',
    // 设置请求头:对应原命令的Accept头
    CURLOPT_HTTPHEADER => [
        'Accept: application/vnd.de.mobile.api+json',
        // 注意:multipart/form-data的头不需要手动设置,PHP会自动处理
        // 手动添加反而可能导致格式冲突
    ],
    // 对应原命令的 -F:处理文件上传(PHP5.5+推荐用CURLFile,更安全)
    CURLOPT_POSTFIELDS => [
        'image1' => new CURLFile('1000_1.JPG', 'image/jpg'),
    ],
    // 对应原命令的 -X PUT:设置请求方法为PUT
    CURLOPT_CUSTOMREQUEST => 'PUT',
    // 返回响应内容而不是直接输出
    CURLOPT_RETURNTRANSFER => true,
    // 把verbose日志临时存到内存(调试用)
    CURLOPT_STDERR => fopen('php://temp', 'rw+'),
]);

// 执行请求
$response = curl_exec($ch);

// 调试:输出verbose日志(如果开启了VERBOSE)
if (CURLOPT_VERBOSE) {
    rewind(curl_getinfo($ch, CURLINFO_STDERR));
    $verboseLog = stream_get_contents(curl_getinfo($ch, CURLINFO_STDERR));
    echo "Verbose Log:\n" . $verboseLog . "\n";
}

// 检查请求是否出错
if (curl_errno($ch)) {
    echo 'cURL Error: ' . curl_error($ch);
} else {
    echo 'Response: ' . $response;
}

// 关闭cURL资源
curl_close($ch);
?>

关键细节说明:

  • 原命令里的-H "Content-Type: multipart/form-data"不需要手动设置,PHP在使用CURLFile时会自动生成带boundary的正确Content-Type头,手动添加反而可能导致上传格式错误
  • CURLFile是PHP 5.5及以上版本的推荐写法,比旧的@语法更安全,也能避开curl.file_uploads配置限制
  • 如果不需要调试,可以把CURLOPT_VERBOSE设为false,并去掉后面的verbose日志输出部分
  • 确保1000_1.JPG的路径是正确的(可以用绝对路径避免相对路径问题)

内容的提问来源于stack exchange,提问作者denimb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 06:25:19