我正在尝试从另一个数组中的一个条目创建一个数组。因此,麻烦的是我从前端获得了一个数组,如下所示:
[{
"account_id": "123456789",
"month_id": 201808,
"month_budget": 11
}, {
"account_id": "111222",
"month_id": 201809,
"month_adops_forecast": 11
}]
现在在后端,我必须检索“ month_budget”或“ month_adops_forecast”,我已经在后端创建了一个if语句,如下所示:
if (isset($data['month_budget'])) {
$metric = "month_budget =". $data['month_budget'];
} else if (isset($data['month_adops_forecast'])){
$metric = "month_adops_forecast =". $data['month_adops_forecast'];
}else {
return false;
}
如您所见,我将其创建为string
,但我希望将此"metric"
放在自己创建的数组中。我尝试同时获取键和值,但这仅给了我价值,因为它位于if (isset($data['month_budget'])) {
内部,因此说$data['month_budget']
时我无法获取键
检索此数据的最佳方法是什么?
想要的结果:
$ data =与其相同的数组
$ metric = month_budget或month_adops_forecast
$metric = array('month_adops_forecast' => 11);
OR
$metric = array('month_budget' => 11);
答案 0 :(得分:1)
您可以使用此:
if (isset($data['month_budget'])) {
$metric['month_budget'] = $data['month_budget'];
} else if (isset($data['month_adops_forecast'])){
$metric['month_adops_forecast'] = $data['month_adops_forecast'];
} else {
return false;
}
此$metric = "month_budget =". $data['month_budget']
表示法不能用于创建数组,您必须使用$array['key']
或$array = array('key' => 'value')
设置键,当然,这是最常见的方法
我假设您正在尝试最后一个。
答案 1 :(得分:0)
如果我的回答正确,要获得预期的结果,可以使用以下方法:
if (isset($data['month_budget'])) {
$metric['month_budget'] = $data['month_budget']);
} else if (isset($data['month_adops_forecast'])){
$metric['month_adops_forecast'] = $data['month_adops_forecast']);
}else {
return false;
}