【发布时间】:2016-05-08 01:59:46
【问题描述】:
我需要将 PHP 数组转换为 JSON,但我没有得到我期望的结果。 我希望它是一个可以使用数字索引轻松导航的对象。 这是一个示例代码:
$json = array();
$ip = "192.168.0.1";
$port = "2016";
array_push($json, ["ip" => $ip, "port" => $port]);
$json = json_encode($json, JSON_PRETTY_PRINT);
// ----- json_decode($json)["ip"] should be "192.168.0.1" ----
echo $json;
这就是我得到的
[
[
"ip" => "192.168.0.1",
"port" => "2016"
]
]
但我想得到一个对象而不是数组:
{
"0": {
"ip": "192.168.0.1",
"port": "2016"
}
}
【问题讨论】:
-
为什么想让外层数组变成 JSON 对象?如果它只有数字键,那么数组会在稍小的空间内提供相同的信息,并且在 JS 方面更容易使用(例如,您可以使用
Array::forEach和Array::map)。 -
@00Davo 谢谢,因为我认为当它是一个对象时更容易处理它hhh,我主要在服务器端(PHP)上使用它:)赞成