php – Luracast Restler 3 RC6:如何重命名XML对象名称

我有一个代码,如:

<?php
class Files {
  protected function get() {
    return array(
      'files' => array(
        'file' => array(
          array(
            'filename' => 'test1.jpg',
            'modified' => '2015-01-01 00:00:00',
          ),
          array(
            'filename' => 'test2.jpg',
            'modified' => '2015-01-02 00:00:00',
          ),
          array(
            'filename' => 'test3.jpg',
            'modified' => '2015-01-03 00:00:00',
          ),
        ),
      )
    );
  }
}

JSON输出是:

{
    "files": {
        "file": [
            {
                "filename": "test1.jpg",
                "modified": "2015-01-01 00:00:00"
            },
            {
                "filename": "test2.jpg",
                "modified": "2015-01-02 00:00:00"
            },
            {
                "filename": "test3.jpg",
                "modified": "2015-01-03 00:00:00"
            }
        ]
    }
}

XML输出:

<response>
  <files>
    <file>
      <item>
        <filename>test1.jpg</filename>
        <modified>2015-01-01 00:00:00</modified>
      </item>
      <item>
        <filename>test2.jpg</filename>
        <modified>2015-01-02 00:00:00</modified>
      </item>
      <item>
        <filename>test3.jpg</filename>
        <modified>2015-01-03 00:00:00</modified>
      </item>
    </file>
  </files>
</response>

问题是我希望文件位于< file>内标签,不在< item>内标签.

这是我想要获得的示例XML输出:

<response>
  <files>
    <file>
      <filename>test1.jpg</filename>
      <modified>2015-01-01 00:00:00</modified>
    </file>
    <file>
      <filename>test2.jpg</filename>
      <modified>2015-01-02 00:00:00</modified>
    </file>
    <file>
      <filename>test3.jpg</filename>
      <modified>2015-01-03 00:00:00</modified>
    </file>
  </files>
</response>

我怎样才能做到这一点?
我已经尝试了很多我可能想到的一切,没有运气.

我尝试了以下答案,但没有帮助.我想答案是Restler 1或2,因为它太旧了:
Luracast Restler: “Naming” returned objects

编辑:

更改XmlFormat :: $defaultTagName =’file’;或类似的东西不是一个选项,因为我需要重命名其他< item>标签也在同一个请求中.

编辑2:

我知道这可以通过创建我自己的“XmlFormat.php”文件来实现,该文件具有我想要的格式,但是当前的原始版本是否支持这种自定义(根据这个答案:Luracast Restler: “Naming” returned objects)或者是此功能稍后被删除?

最佳答案 我认为没有办法做到这一点,没有创建我自己的格式

点赞