【问题标题】:How to Convert the below string into the array using php如何使用php将以下字符串转换为数组
【发布时间】:2017-10-21 19:59:31
【问题描述】:

如何使用php将下面的字符串转换成数组

字符串:"[{\"site_id\":1,\"posts\":{\"0\":146,\"2\":104,\"3\":80},\"groups\":[{\"group_id\":1,\"site_id\":1,\"group_name\":\"Default List\",\"posts\":{\"0\":146,\"2\":104,\"3\":80}}]}]"

php代码:json_decode(string, true);

我用上面的代码把字符串转成数组,还是没用

可以知道如何将字符串转换成数组

我想从字符串中获取帖子 id。

【问题讨论】:

  • 你已经尝试过什么?请包括您尝试过的代码以及您遇到并需要帮助的具体问题。
  • 检查更新的问题
  • 我已经包含了我尝试将字符串转换为数组的代码
  • 通过jsonlint.com运行json

标签: php arrays json string


【解决方案1】:

您的字符串似乎是 JSON - 因此,您只需使用内置的 int json_decode 函数即可将该 JSON 转换为 php 中的适当数据类型

http://php.net/manual/de/function.json-decode.php

$json = "['a','b','c']";
var_dump(json_decode($json), true);

生产

array(3) {
[0] => 'a', 
[1] => 'b',
[2] => 'c'

}

【讨论】:

  • 究竟有什么不符合您的想象?请从您的 json_decode() 中添加 var_dump 的输出 :)
  • 谢谢克里斯的详细解释
【解决方案2】:
$jsonData = "[{\"site_id\":1,\"posts\":{\"0\":146,\"2\":104,\"3\":80},\"groups\":[{\"group_id\":1,\"site_id\":1,\"group_name\":\"Default List\",\"posts\":{\"0\":146,\"2\":104,\"3\":80}}]}]";    
$data = json_decode($jsonData);

【讨论】:

  • 上面的方法我已经试过了还是没用可以知道另一种方法
猜你喜欢
  • 1970-01-01
  • 2021-10-23
  • 2014-07-15
  • 2021-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多