搜索

首页  >  问答  >  正文

从 PHP 中的 API Post 请求获取二维数组

我无法获取 API post 请求的二维数组。无法在 php 中制定从 JSON 格式 API 获取多个数组的逻辑。 JSON API请求的结构为:

"abc": [{"id": 123, "days": [{"a": 11, "b": 11},{"a":22, "b":22}]} , {"id": 456, "days": [{"a": 33, "b": 33},{"a":44, "b":44}]}

我正在尝试这种二维数组的逻辑来获取 ID 和 A、B 的值,我知道这些值的格式不正确。

foreach ($request->abc as $ids => $id) {
    foreach ($id => array_combine($a, $b)) {
        $value .= $this->helper($id, $a, $b);
    }
}

我已经通过此循环成功地从 API 检索了单个数组:

// single array structure from post request "abc": {"single_array_val":[11,12,13,14,15]}
foreach ($request->abc as $single_arrays => $single_array) {
  $value .= $this->helper($single_arrays, $single_array);
}

P粉057869348P粉057869348500 天前752

全部回复(1)我来回复

  • P粉244730625

    P粉2447306252023-09-09 00:03:51

    通过这个循环,我调用了“abc”的对象:

    foreach ($request->abc as $abc) {
        $value .= $this->helper($abc['id'], $abc['days']);
    }

    然后我调用了辅助函数,在其中为“days”对象开发了一个循环:

    public function helper($id, $days)
    {
        $days_value = "";
        foreach ($days as $day) {
            $days_value .= $this->helper2($day['a'], $day['b']);
        }
        return echo 'the id is: '. $id .' and this have days' . $days_value; 
    }

    这是 helper2 函数,我通过将 a 和 b 的值作为参数发送来解码它们:

    public function helper2($a, $b)
    {
        return 'this is a:' . $a . ', this is b:' . $b;
    }

    现在我可以轻松地将 a 和 b 的值作为参数传递给 helper2 函数。 希望有人会觉得它有帮助。

    回复
    0
  • 取消回复