2011-10-05 76 views
1

在Symfony项目中,我在YML文件中有以下php代码。我希望这段代码能读取另一个yml文件,并根据它的值修改内容。但是,sfYaml :: load返回一个字符串而不是数组。任何想法,为什么这可能是?Symfony的sfYaml :: load返回一个stange值

在下面的代码中,我希望$ s包含一个数组,但是它包含一个值为“../config/server_settings.yml”的字符串。

从databases.yml里:

dsn:  mysql:host=myhost;dbname=mydbname<?php $s = sfYaml::load('../config/server_settings.yml');var_dump($s); ?> 

回答

0

它看起来像它的治疗您的输入为阳明海运内容的字符串,可能是因为它无法找到该文件。尝试使用全路径或一些快速调试与is_file('../config/server_settings.yml')

+0

感谢您的回答。改变它使用sfConfig :: get('sf_config_dir')修复了这个问题。最初我被抛弃了,因为它没有抛出异常或错误。 – Daniel

+0

@丹尼尔很高兴听到。我不得不深入sfYaml来提出这个建议。为相同参数提供字符串或文件路径的函数总是有点时髦。 –