Symfony2的 - 为什么要使用XML设置/配置?(Symfony2 - Why use XML

2019-06-26 15:30发布

有没有兴趣使用XML在YAML为这些类型的文件中:

  • 配置
  • 安全
  • 路由
  • 服务
  • 译文

我想问一下XML VS YAML和JSON全球范围内,但我会坚持这些主题:)

Answer 1:

在我公司的项目每个上面提到的点,我们使用YAML ,因为它更具有可读性。 最可读的。 该readablest。


编辑

唯一的抽象的情况下,我能想象使用XMLYAML -可能是一些动态文件的作家,因为它是更容易操作使用节点SimpleXML或类似的东西。 例如,如果你需要定义一些配置文件,建立测试等模式...

但是,很难想象另一种情况。


第二个编辑:

由于我的回答被接受,我无法不同意m2mdas -正如他在提到下面的答案 ,这是有道理的,使用另一件事XML是IDE的自动完成支持。



Answer 2:

XML congiruration的优点是IDE自动完成和即时验证。 作为元素由混凝土架构定义定义的IDE可以立即验证对它的元素,这是不可能在YAML或JSON。 此外,我认为Symfony的验证处理之前在配置中的XML元素反对的定义。

编辑:

通过验证我的意思是验证元件结构体对定义的模式。 这是更好地处理之前验证配置。 例如,一个services.yml与数百名服务对象定义在第99个服务定义错误。 YAML解析器会逐步解析,打造昂贵的CPU密集型的服务对象,将在第99定义失败。 而对于service.xml与定义的模式可以验证元素结构,并进行处理,如果它是确定。 显然第二工艺是有效的。



Answer 3:

法比安斯基Potencier写在他的博客中使用XML在YAML的优势:

  • 当加载一个XML文件,它会自动的内置services.xsd文件验证;

  • 该XML可以自动完成的IDE;

  • XML格式比YAML一个速度更快;

  • XML格式为没有外部的依赖(YAML格式依赖于sfYAML部件上)。

虽然这篇文章是为symfony1.x写的,也分绝对可以应用于Symfony2的。

http://fabien.potencier.org/article/15/symfony-service-container-using-xml-or-yaml-to-describe-services



Answer 4:

支持XML的另一件事是定义使用PHP常量,这是不可能的YAML参数的可能性。



文章来源: Symfony2 - Why use XML for settings/config?