首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在PHP中扁平嵌套的JSON数组

在PHP中扁平嵌套的JSON数组
EN

Stack Overflow用户
提问于 2017-07-12 21:45:51
回答 1查看 704关注 0票数 0

我需要在PHP中扁平化一个嵌套的JSON,我的列表是:

代码语言:javascript
复制
["Paris", "Barcelona", ["Glasgow", ["Sydney"]]]],"Budapest"] 

到目前为止,我有这样的代码:

代码语言:javascript
复制
<?php
$array = [
'city' => [
    'Paris',
    'Berlin',
    'London',
],
];

$flattened = iterator_to_array(new RecursiveIteratorIterator(
    new RecursiveArrayIterator($array)
), false);

print_r($flattened);

我需要用这个

代码语言:javascript
复制
print_r((new Flattener($jsonArray))→flatten());

此命令应该返回一个一维PHP数组。

你知道我错过了什么吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-12 23:05:03

你需要

  1. 创建一个具有构造函数(__construct)的类,该构造函数接受数组和
  2. 创建一个扁平化的方法,该方法接受数组并将其扁平化。

您可以使用一个示例:

代码语言:javascript
复制
class Flattener {

  private $array;

  public function __construct($array) {
    $this->array = $array;
  }

  public function flatten() {
    return iterator_to_array(new RecursiveIteratorIterator(
      new RecursiveArrayIterator($this->array)), false);
  }

}

print_r((new Flattener($array))->flatten());
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45068019

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档