PHP json_编码-创建json数组
我过去曾使用json_encode函数创建简单的json对象,如下所示:PHP json_编码-创建json数组,php,json,Php,Json,我过去曾使用json_encode函数创建简单的json对象,如下所示: $payload = array ("user" => $username, "password" => $password, "group" => $group); $payload = json_encode ($payload); { "query": [ { "Date": "11/01/2017...12/31/2017" } ] } 这就产生了: {"
$payload = array ("user" => $username, "password" => $password, "group" => $group);
$payload = json_encode ($payload);
{
"query": [
{
"Date": "11/01/2017...12/31/2017"
}
]
}
这就产生了:
{"user":"john smith","password":"abc12345","group":"sales"}
我现在需要生成一个JSON数组,如下所示:
$payload = array ("user" => $username, "password" => $password, "group" => $group);
$payload = json_encode ($payload);
{
"query": [
{
"Date": "11/01/2017...12/31/2017"
}
]
}
但是我找不到正确的语法。您可以简单地用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...
)
)
);
您只需在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...
)
)
);
可能是这样的
$array = array(
'query' => array(
array('Date' => '11-01-2017')
)
);
echo '<pre>';
print_r(json_encode($array, JSON_PRETTY_PRINT));
可能是这样的
$array = array(
'query' => array(
array('Date' => '11-01-2017')
)
);
echo '<pre>';
print_r(json_encode($array, JSON_PRETTY_PRINT));
参考:
参考:这将使
query
成为一个对象,但OP想要一个数组。我不确定你的意思,在我的代码中,“query”是一个键,而不是数组……我是指结果JSON中query
属性的值。您的代码将生成“查询”:{“日期”:“2017年11月1日…2017年12月31日”}
(一个对象值),而OP想要“查询”:[{“日期”:“2017年11月1日…2017年12月31日”}]
(一个数组值)啊,我明白了,我错过了数组。我编辑了我的答案,使之适合现在。这将使query
成为一个对象,但OP想要一个数组。我不确定你的意思,在我的代码中,“query”是一个键,而不是数组……我指的是结果JSON中query
属性的值。您的代码将生成“查询”:{“日期”:“2017年11月1日…2017年12月31日”}
(一个对象值),而OP想要“查询”:[{“日期”:“2017年11月1日…2017年12月31日”}]
(一个数组值)啊,我明白了,我错过了数组。我编辑了我的答案,使它适合现在。可能的重复可能的重复