如何在yaml中写反斜杠

时间:2011-11-15 10:55:47

标签: zend-framework configuration yaml

我正在尝试将zend框架配置文件从application.ini重写为application.yml格式,我有一些无法解决的问题。

在application.ini中的

我有这个:

pluginPaths.Bisna\Application\Resource\ = "Bisna/Application/Resource"

它有效。但是,如果我尝试写入yaml文件,我会收到有关不支持的语法

的错误
pluginPaths:
  Bisna\Application\Resource\: Bisna/Application/Resource

我尝试了很多方法来解决这个问题,但没有成功......

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

似乎Zend_Config_Yaml不支持密钥名称中的反斜杠。源代码中的相关行如下:

  

preg_match(“/(\ w +):\ s *(。*)/”,$ line,$ m)

Zend/Config/Yaml.php,ZF 1.11.11中的第313行)。它只与YAML键名匹配[A-Za-z0-9_]

解析方法与Zend_Config_Ini不同,后者使用对parse_ini_file() PHP函数的调用。这就是它使用.ini文件的原因。

所以,除非你想修改ZF源代码(我不推荐),否则我认为没有任何简单的解决方案。

希望有所帮助,