我一直在寻找在Symfony项目中设置常见PHP选项的最佳位置,并且看到了一些 php.yml 被提及的时间 - 但我发现这主要是在v1.x文档中虽然在v2.x中没有提到它(或者至少我找不到它 - Symfony搜索停顿一段时间也没有帮助)。
php.yml 有很好的' ,'' 和'警告' 可以微调配置的区域。
我尝试使用 php.yml 并在app / config中设置一些选项,但它不起作用。
在Symfony 2中放弃了 php.yml ,如果是 - 那么下一个最好的设置PHP选项的方法是什么?
根据要求,这是一个简单的php.yml示例我试过,它非常基本:
## YAML Template.
set:
display_errors: on
error_log: phperror.log
check:
warn:
编辑:为什么我放弃像Matteo建议的解决方案的其他解释建议
当我这样做时,发生了一些奇怪的事情。我无法精确定位 究竟为什么,所以我离开了它(我试图避免它的所有不确定性 因为生命如此短暂而来到Symfony。 所以,我做了" my_own_config.php "其中我只有一个简单的界限:
ini_set("error_log", "c:/wamp/logs/phperror2.log");
在我的config_dev.yml中,我将其包含在
中- { resource: my_own_config.php }
在我的测试控制器中,我会打印
echo '<br>'.ini_get('error_log');
确保我的设置真的得到应用&amp;记住。原来, 当我第一次加载测试页时,它会真的记住并显示正确的新设置,但是当我在它之后点击F5 - 它再次显示默认的系统日志。我一直在开发模式下运行。尝试了F5,硬刷等,但所有后来的电话都退回了 降至默认值。
当我更改 my_own_config.php 文件并重新保存时 - 再次,第一次之后,我的自定义设置将是 记得,随着刷新,它消失了。 所以,我得出结论,一些奇怪的Symfony缓存接管并覆盖我的自定义php配置文件并放弃了这种方法。
答案 0 :(得分:1)
如果您想进行一些外部框架设置更改,可以按照Miscellaneous Configuration中的说明整理设置,例如,您可以将自定义设置放在以下文件中:
# app/config/my_settings.php
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);
并将其包含在config.yml中:
# app/config/config.yml
imports:
- { resource: my_settings.php }
希望这个帮助
答案 1 :(得分:0)
php.yml是一个Symfony1配置文件,它不适合在Symfony2中使用。
根据Symfony Best Practices页面,app/config/config.yml
适用于与应用程序相关的设置,而app/config/parameters.yml.dist
(自动生成parameters.yml
)适用于与基础架构相关的设置
在app / config中找到的标准Symfony2配置文件是:
对于原始PHP配置设置,最好的位置是web / app_dev.php(用于开发)或web / app.php(用于生产),或通过php.ini在系统范围内。但是,Symfony有自己的PHP错误处理服务。但你仍然可以在app_dev.php文件的顶部打开PHP错误 - error_reporting(E_ALL); ini_set('display_errors',1);