2

我试图了解如何最好地表示数据,最终我会从中提取并构建 JSON / XML。但是我一直在讨论如何定义对象。

本质上,我想代表父/子关系以及项目上的属性。这样我就可以构建一个 JSON 或 XML 元素。

以前有没有人用过这样的东西,或者对如何解决它有任何想法?

我构建的 XML 看起来像:

<props>
  <items>
    <item id='foo'/>
    <item id='foo2' />
  </items>
  <bar>
    <test>
       <tree>This Data</tree>
       <tree>That Data</tree>
    </test>
  </bar>
</props>

我想到了一些如何尝试将对象中的每个数据项表示为:

class ItemResource {
  private $key;
  private $value;
  private $attribute_list = array();

  public function __construct($key, $value, array $attributeList=null){
      $this->key = $key;
      $this->value = $value;
      if($attributeList!=null){  
          //do stuff 
          $this->attribute_list = $attributeList;
      }
    }

}
4

1 回答 1

2

对于 PHP 的Array来说,这听起来像是一项出色的工作。您可以使用关联数组构建无限大的键值层次结构。

$itemresource = array(
    "key" => $key,
    "value" => $value,
    "attribute_list" => array(
        "foo" => "bar",
        "some" => "value"
    )
);

关联数组也可能是 XML 生成器的输入(尽管这是我的猜测)

您还可以使用json_encode以 JSON 格式轻松打印数组

于 2011-05-21T05:58:31.063 回答