代码之家  ›  专栏  ›  技术社区  ›  Peter Lindqvist

实现类似xpath的配置系统的最佳方法

  •  1
  • Peter Lindqvist  · 技术社区  · 15 年前

    我正试图想出在应用程序中处理配置的最佳方法。起初,我只是使用simpleXML并将代码放在一个单例中。

    我决定尝试创建一种方法来查询配置 $config->getConfig('/module/name');

    您是否必须使用xpath来执行此操作,或者是否有其他更快/更容易使用的方法?我知道Magento使用了这个方案,但是有一个自定义的类似于xpath的语法。

    只要是基于XML的,就可以自由地建议不同的方案。

    SimpleXML是一种很好的方法,但是我觉得需要在它周围包装一些东西,因为返回值几乎总是我想要字符串值的对象。

    如果查询返回一个值,有人能解释如何包装xpath调用以返回字符串值吗?如果查询有多个子项,有人能解释如何包装对象吗?

            $xml = $this->xml->xpath($path);
    

    如何检测返回的节点是否为叶节点?

    1 回复  |  直到 15 年前
        1
  •  2
  •   Asbjørn Ulsberg    15 年前

    我建议你试试 SimpleXml 因为它允许您编写常规的PHP来查询XML而不是XPath。如果需要使用xpath,则可以 execute XPath expressions 也有,但能写 $config->module->name 很好,imho。