Symfony欧宝娱乐app下载地址 3.3中的新功能:以更简单的方式获取项目根目录
4月11日·发表的哈维尔Eguiluz
警告:这篇文章是关于一个不受支持的Symfony版本。欧宝娱乐app下载地址有些信息可能已经过时了。阅读最新的Symfony文档欧宝娱乐app下载地址.
在Sy欧宝娱乐app下载地址mfony 3.3中,我们引入了很多变化和简化,为将于2017年11月发布的迷人的Symfony 4.0做好准备。
其中一些变化在技术上是很小的,但会对应用程序产生深远的影响。在Sy欧宝娱乐app下载地址mfony应用中,这是众所周知的getRootDir ()
方法内核
类及其对应项kernel.root_dir
参数是误导性的。
它们返回应用程序内核(通常AppKernel.php
)储存。在Sy欧宝娱乐app下载地址mfony 2和3中这通常是app /
目录,所以常用的表达式是% kernel.root_dir % / . . / var /
或% kernel.root_dir % / . . / web /
.在Sy欧宝娱乐app下载地址mfony 4中,内核类已移动到src /
目录,因此前面的表达式不会中断。
然而,考虑到大多数时候getRootDir ()
是用来获取项目根目录的,在Symfony 3.3中,我们决定添加一个新方法欧宝娱乐app下载地址内核
类getProjectDir ()
结果就是这样。
的第一个目录来查找项目根目录composer.json
从存储内核的目录开始,一直到composer.json
是发现。
实际上,这意味着您的应用程序可以简化所使用的大部分或所有表达式% kernel.root_dir %
.例如:使用% kernel.project_dir % / web /
而不是% kernel.root_dir % / . . / web /
.
发表在#生活在边缘
评论
蒂亚戈·法里亚斯·达席尔瓦
2017年4月11日说在49
小小的改变,却有很好的影响!
@Tommy,如果我们看这里的代码:https://github.com/symfony/symfony/pu欧宝娱乐app下载地址ll/22315/files,如果没有作曲家。json,我想它会一直往上,直到计算机的根目录。
也许你可以在你的一些项目中尝试它来验证这一点,并在有bug时打开一个问题。我们有时间在5月底Symfony 3.3发布之前修复它。欧宝娱乐app下载地址
也许你可以在你的一些项目中尝试它来验证这一点,并在有bug时打开一个问题。我们有时间在5月底Symfony 3.3发布之前修复它。欧宝娱乐app下载地址
如果您没有部署编写器。json文件,覆盖getProjectDir()方法在你的内核。
Alex Rock is a certified Symfony engineer.
Get certified! Online exams available in all countries.
Register Now