当前位置: 首页 > 面试题库 >

PHP数组到Json对象

邰英毅
2023-03-14
问题内容

我需要将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_encode($json, JSON_FORCE_OBJECT)

JSON_FORCE_OBJECT顾名思义,该标志将json输出强制为一个对象,即使通常将其表示为数组也是如此。

您还可以删除array_push一些更简洁的代码:

$json[] = ['ip' => $ip, 'port' => $port];


 类似资料:
  • 问题内容: 是否可以通过json_encode对这个php数组进行JSON转换?因为这个php数组被调用,当我做.. 在JavaScript中,它给了我错误。我想知道JSON可以/不能做什么类型的php数组是否有限制。 问题答案: 首先,您需要在安装了PHP的Apache服务器上的一个PHP文件。制作如下文件: 然后是您的JavaScript(在此示例中,我使用jQuery): 这应该是开始将PH

  • 问题内容: 我需要解析一个看起来像这样的json文件: 我想将这些X坐标和Y坐标放入JavaObject Click中,该类如下所示: 我看过gson是因为他们说这很容易,但是我不知道如何从文件中做到这一点。 问题答案: 假设您的json字符串数据存储在名为的变量中:

  • 客户端在关于 JSON 数组和 JSON 对象的处理和定义方面总是令人疑惑不已。尤其是由空对象和对象数组引起的问题。本节会展示一些 Elasticsearch JSON API 常见的数据格式,还会说明如何以 PHP 的语法来表达这些数据格式。 空对象 Elasticsearch API 在几个地方使用了空对象,这会对 PHP 造成影响。不像其它的语言,PHP 没有一个简便的符号来表示空对象,而许

  • 问题内容: 我在PHP中有以下数组: 我想将其JSON编码为JSON数组,产生类似以下内容的字符串: 但是当我调用此数组时,得到以下信息: 这是一个对象而不是数组。 我怎样才能将我的数组编码为数组呢? 问题答案: 您正在观察此行为,因为您的数组不是顺序的-它具有键和,但没有键。 仅具有数字索引是不够的。仅当您的PHP数组是顺序的时,即如果其键为0、1、2、3,…时,才会将PHP数组编码为JSON数

  • 问题内容: 我正在尝试使用杂志api获取以下json内容。json的输出是这样的。我希望下面的json转换为php数组。 我的代码如下所示。 上面的代码返回一个空数组。:(如何将上述JSON转换为php对象数组。我很无奈。 谢谢哈恩 问题答案: 您提供的JSON示例无效。使用此JSON验证程序http://jsonlint.com/在线进行检查。您需要删除第59行上的多余逗号。 一个拥有有效jso

  • 问题内容: 我已经设法从数据库中的PHP文件中获取数据。从那里(data.php), 结果就是这样, 那么,如何给名称为“ kitten”的php格式的kitty对象数组呢? 例如像 问题答案: 您必须将结果包装在“小猫”键上的另一个数组中: