代码之家  ›  专栏  ›  技术社区  ›  user982124

PHP json\u encode-创建json数组

  •  1
  • user982124  · 技术社区  · 7 年前

    我过去曾使用json_encode函数创建简单的json对象,如下所示:

    $payload =  array ("user" => $username, "password" => $password, "group" => $group);
    $payload = json_encode ($payload);
    

    这就产生了:

    {"user":"john smith","password":"abc12345","group":"sales"}
    

    我现在需要生成这样的JSON数组:

    {
      "query": [
        {
          "Date": "11/01/2017...12/31/2017"
        }
      ]
    }
    

    但我找不到正确的语法。

    3 回复  |  直到 7 年前
        1
  •  2
  •   Liora Haydont    7 年前

    您只需在php中创建一个2d数组。

    $payload =  array (
        "query" => array(
             array(
                 "date" => "11/01/2017...12/31/2017",
                 "other sub key" => "other sub value"
             )
        ),
        "other main key" => array(
             array(
                 "other sub key" => "other sub value",
                 etc...
             )
        )
    );
    
        2
  •  2
  •   Goma Niharikaa    7 年前

    应该是这样的

    $array = array(
        'query' => array(
            array('Date' => '11-01-2017')
            )
        );
    
    
    echo '<pre>';
    print_r(json_encode($array, JSON_PRETTY_PRINT));
    

    后果

    {
        "query": [
            {
                "Date": "11-01-2017"
            }
        ]
    }
    
        3
  •  0
  •   N.Xu    7 年前
    $payload = json_encode($payload, JSON_PRETTY_PRINT);
    

    参考: http://php.net/manual/en/function.json-encode.php