Как написать обратную косую черту в yaml - PullRequest
0 голосов
/ 15 ноября 2011

Я пытаюсь переписать файл конфигурации Zend Framework из application.ini в формат application.yml, и у меня возникла нерешаемая проблема.

в application.ini У меня есть это:

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

и это работает. Но если я пытаюсь записать его в файл yaml, я получаю ошибку о неподдерживаемом синтаксисе

pluginPaths:
  Bisna\Application\Resource\: Bisna/Application/Resource

Я пробовал так много способов решить эту проблему, но не сработало ..

Есть идеи?

1 Ответ

0 голосов
/ 15 ноября 2011

Кажется, что Zend_Config_Yaml не поддерживает обратную косую черту в именах ключей. Соответствующая строка в исходном коде следующая:

preg_match ("/ (\ w +): \ s * (. *) /", $ Line, $ m)

( Zend / Config / Yaml.php , строка 313 в ZF 1.11.11). Это соответствует только [A-Za-z0-9_] для имен ключей YAML.

Метод синтаксического анализа отличается от Zend_Config_Ini, в котором используется вызов PHP-функции parse_ini_file(). Вот почему он работал с файлами .ini.

Итак, я не думаю, что есть какое-то простое решение, если только вы не хотите изменять исходный код ZF (который я не рекомендую).

Надеюсь, это поможет,

...