[英]How do I post a two-dimensional array to an API
我面临的问题可能看起来很简单,但由于我无法尝试,因此变得非常麻烦。
我需要将数据发布到 API。 我正在使用 cURL PHP 执行此操作,因此我从表单中获取数据,将其存储在变量中,并将这些变量存储在要发送的数组中,但我需要发送的参数之一是数组本身:
此信息旨在描述客户:
"administrative": false,
"alias_numbers": [
{
"ac": "858",
"cc": 34,
"number_id": 3161,
"sn": "880961"
},
{
"ac": "958",
"cc": 34,
"number_id": 3239,
"sn": "514"
},
{
"ac": "465",
"cc": 34,
"number_id": 3241,
"sn": "363983"
},
{
"ac": "858",
"cc": 34,
"number_id": 3243,
"sn": "88085692"
},
{
"ac": "951",
"cc": 34,
"number_id": 3245,
"sn": "598217"
}
],
"customer_id": 1,
我不确定如何将 alias_numbers 分配给我的 dataArray 中的值,最多可以有 10 个,但这是在表单内进行控制的。 这是我想出的:
$dataArray = array(
"customer_id" => $subscriberCustomerId,
"email" => $subscriberEmail,
"username" => $subscriberComRegNum,
"external_id" => $subscriberComRegNum,
"primary_number" => array(
"cc" => $subscriberPrimaryNumber["cc"],
"ac" => $subscriberPrimaryNumber["ac"],
"sn" => $subscriberPrimaryNumber["sn"]
),
for ($i=0; $i < sizeof($arrayAliasNumbers); $i++) {
"alias_numbers" => array(
"cc" => $arrayAliasNumbers[$i]["cc"],
"ac" => $arrayAliasNumbers[$i]["ac"],
"sn" => $arrayAliasNumbers[$i]["sn"]
),
}
"domain_id" => $subscriberDomainId,
"administrative" => $subscriberAdministrative,
"status" => $subscriberStatus
);
你可以看到有一个primary_number,它没有造成任何问题,因为只有一个,但是有了这些别名,我完全迷失了。
这里有我要发送的数组(这是来自 processmaker,因此是 @= 变量):
for ($i=1; $i <= 10; $i++) {
if (!isset(@@formSubscriberAliasNumGrid[$i]['subscriberAliasCc']) && !isset(@@formSubscriberAliasNumGrid[$i]['subscriberAliasAc']) && !isset(@@formSubscriberAliasNumGrid[$i]['subscriberAliasSn']) {
break;
}else{
$subscriberAliasNumber[$i] = array(
"cc" => @=formSubscriberAliasNumGrid[$i]['subscriberAliasCc'],
"ac" => @=formSubscriberAliasNumGrid[$i]['subscriberAliasAc'],
"sn" => @=formSubscriberAliasNumGrid[$i]['subscriberAliasSn']
);
$arrayAliasNumbers[$i] = [$subscriberAliasNumber[$i];
}
感谢您的帮助,最好的问候!
单独制作阵列,然后将其添加到您的阵列中。
$tmp = [];
for ($i=0; $i < sizeof($arrayAliasNumbers); $i++) {
$tmp[] = [
"cc" => $arrayAliasNumbers[$i]["cc"],
"ac" => $arrayAliasNumbers[$i]["ac"],
"sn" => $arrayAliasNumbers[$i]["sn"]
];
}
$dataArray = array(
"customer_id" => $subscriberCustomerId,
"email" => $subscriberEmail,
"username" => $subscriberComRegNum,
"external_id" => $subscriberComRegNum,
"primary_number" => array(
"cc" => $subscriberPrimaryNumber["cc"],
"ac" => $subscriberPrimaryNumber["ac"],
"sn" => $subscriberPrimaryNumber["sn"]
),
"alias_numbers" => $tmp, // <- added here
"domain_id" => $subscriberDomainId,
"administrative" => $subscriberAdministrative,
"status" => $subscriberStatus
);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.