0
$arr['key1'] = "";
$arr['key2'] = "";
echo json_encode($arr);

我明白了{"key1":"","key2":""}。我怎么能只添加一个没有值的关键元素?会是这样{"key1","key2"}吗?

4

2 回答 2

1

您想要的输出不是有效的 JSON。如果要创建列表,请使用:

$arr[0] = 'key1';
$arr[1] = 'key2';
echo json_encode($arr);

输出:

["key1","key2"]
于 2013-02-24T04:36:37.703 回答
1

你所追求的不是正确的 JSON。JSON 中的对象使用花括号,但这意味着每个键都必须有一个值。您可以使用 JSON 数组,它使用方括号代替。

换句话说,你可以这样做:

$arr = array( 'key1', 'key2' );`

这将产生 json string '["key1", "key2"]',但这是你能得到的最接近的。

于 2013-02-24T04:36:44.493 回答