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

PHP CURLOPT_POSTFIELDS如何传入$lead['name']等动态值

PHP 动态替换CURL POST参数实现方案

优先推荐用「数组转JSON」的实现方式,可完全规避手动拼接JSON字符串带来的语法错误、转义失败问题:

  • 第一步:构造和请求结构一致的PHP关联数组,填入动态变量
$requestData = [
    'datalist' => [
        [
            'Firstname' => $lead['name'],
            'Lastname' => $lead['lastname'],
            'Email' => $lead['email'],
            'Phone' => $lead['phone'],
            'leadsource' => $lead['leadsource'],
            'address' => $lead['address'],
            'pincode' => $lead['pincode'],
            'Grade' => $lead['grade'],
            'utmcampaign' => $lead['utmcampaign'],
            'utmcontent' => $lead['utmcontent'],
            'utmmedium' => $lead['utmmedium'],
            'utmterm' => $lead['utmterm']
        ]
    ]
];
  • 第二步:将数组转为合法JSON字符串
    如果请求参数包含中文,可添加JSON_UNESCAPED_UNICODE参数避免中文被转义:
$postJson = json_encode($requestData, JSON_UNESCAPED_UNICODE);
  • 第三步:替换CURL配置中的POST字段
    把原Postman导出代码里的硬编码字符串替换为上面生成的$postJson变量即可:
CURLOPT_POSTFIELDS => $postJson,

备用方案:直接在字符串中嵌入变量(不推荐)

如果坚持要直接修改原字符串,注意PHP双引号支持解析变量,需要把外层的单引号换成双引号,内部的双引号用反斜杠转义,变量用大括号包裹避免解析异常:

CURLOPT_POSTFIELDS => "{\"datalist\":[{\"Firstname\":\"{$lead['name']}\",\"Lastname\":\"{$lead['lastname']}\",\"Email\":\"{$lead['email']}\",\"Phone\":\"{$lead['phone']}\",\"leadsource\":\"Website\",\"address\":\"lakeview\",\"pincode\":\"440010\",\"Grade\":\"Class 1\",\"utmcampaign\":\"summer_sale\",\"utmcontent\":\"video_ad\",\"utmmedium\":\"organic_social\",\"utmterm\":\"social_media\"}]}",

注意:原Postman导出的JSON末尾多了冗余逗号,属于非法JSON格式,手动修改时需要删除,用数组转JSON的方案会自动处理该问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 13:39:02