对象表示 - PHP

时间:2011-05-21 04:57:03

标签: php oop object-model

我正在努力了解如何最好地表示最终我将从中提取并构建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;
      }
    }

}

1 个答案:

答案 0 :(得分:2)

对于PHP的Array来说,这听起来很棒。您可以使用关联数组构建无限大的键值层次结构。

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

关联数组也可能是XML生成器的输入(虽然这是我自己的猜测)

您还可以使用json_encode

轻松地在JSON中打印阵列