新在Symfo欧宝娱乐app下载地址ny 2.7:生产力的提高
警告:这篇文章是关于一个不受支持的Symfony的版本。欧宝娱乐app下载地址其中一些信息可能是过时了。阅读最近的Symfony文档欧宝娱乐app下载地址。
欧宝娱乐app下载地址Symfony 2.7包括无数的代码调整和改进。很多都是微小的变化会增加你的日常工作效率。在本文中,我们介绍七个很小但是很漂亮的特性。
增加了一个getParameter ()
快捷方式方法基本控制器
得到一个容器参数的值在一个控制器是最常见的挫折之一,当你开始学习Symfony。欧宝娱乐app下载地址你通常使用get ()
方法首先没有运气,然后尝试使用不存在的getParameter ()
方法。幸运的是,Symf欧宝娱乐app下载地址ony 2.7将添加一个新的getParameter ()
快捷方式:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
使用欧宝娱乐app下载地址\包\FrameworkBundle\控制器\控制器;类DefaultController扩展控制器{公共函数indexAction(){/ /欧宝娱乐app下载地址 Symfony 2.6美元价值=美元这- >容器- >getParameter (“param_name”);/ /欧宝娱乐app下载地址 Symfony 2.7美元价值=美元这- >getParameter (“param_name”);/ /……}}
添加反馈Symfony版本状态欧宝娱乐app下载地址
谁想运行一个过时的Symfony版本考虑在每个新版本引入的欧宝娱乐app下载地址特性?幸运的是,从2.7 Symfony开始,就很难运行一个欧宝娱乐app下载地址过时的版本。原因是web调试工具栏将包括一个视觉反馈对Symfony的状态版本:欧宝娱乐app下载地址
分析器的HTTP状态显示搜索结果
提供的
亚历山大Schwenn
在# 13034。
有时很难寻找一个特定的请求中所有存储在Symfony的请求分析器。欧宝娱乐app下载地址在Sy欧宝娱乐app下载地址mfony 2.7这将是一个更加感谢新列显示每个请求的HTTP状态。
请注意,如果您将配置文件信息存储在一个数据库MySQL或SQLite类型,您必须删除现有表或添加新的status_code
列手动。
在线路条件下添加对容器参数的支持
提供的
尼基塔Nefedov
在# 12960。
在Sy欧宝娱乐app下载地址mfony 2.7中,路线条件现在支持使用容器参数的表达式。只是包装的参数名称%
人物和Symfony将取代他们欧宝娱乐app下载地址之前,他们的价值观评价表达式:
1 2 3 4 5
# app / config / routing.yml联系人:路径:/联系默认值:{_controller:AcmeDemoBundle:主要:接触}条件:“request.headers.get(“用户代理”)匹配% allowed_user_agents %”
请注意,这一变化引入了一个小BC打破边界情况。如果你以这种方式使用的模运算符表达式:foo % % 2
2.欧宝娱乐app下载地址6,Symfony会解析它$ foo % $ % 2
和2.7欧宝娱乐app下载地址 Symfony将取代%酒吧%
的价值酒吧
容器参数或它将提高一个错误如果它不存在。
线头命令到线头:
名称空间
在过去我们都感动Symfony调试命令欧宝娱乐app下载地址调试:
名称空间为了更好地组织命令的功能。欧宝娱乐app下载地址Symfony 2.7做同样的线头命令用来发现语法错误在YAML文件和树枝模板:
1 2 3 4 5 6 7
# 欧宝娱乐app下载地址Symfony 2.6美元的php应用程序/控制台yaml:线头……美元php应用程序/控制台树枝:线头……# 欧宝娱乐app下载地址Symfony 2.7(旧的命令名称也工作)$ php应用程序/控制台线头:yaml…美元的php应用程序/控制台线头:树枝……
这可能看起来微不足道的变化,但分组下调试命令调试:
和皮棉命令下线头:
使框架更加一致,总是一件好事。
支持产品毛羽多枝模板
在Sy欧宝娱乐app下载地址mfony 2.7可以通过任何数量的文件和/或目录线头:树枝
命令:
1 2 3 4 5 6 7 8 9 10
# 欧宝娱乐app下载地址Symfony 2.6(一个模板或一个目录)美元的php应用程序/控制台线头:树枝app /资源/视图/ base.html。树枝1/1美元有效文件的php应用程序/控制台线头:树枝app /资源/视图/博客/ 4/4的有效文件# 欧宝娱乐app下载地址Symfony 2.7(任意数量的文件和/或目录)美元的php应用程序/控制台线头:树枝app /资源/视图/ base.html。树枝app /资源/视图/博客/ 5/5有效文件
自动重新启动内置的web服务器
使用PHP内置的web服务器是越来越普遍而开发应用程序。您可能使用服务器:运行
自2.2 Symfony命令可用。欧宝娱乐app下载地址然而,从Symfony 2.6还可以使用欧宝娱乐app下载地址服务器:启动
,服务器:状态
和停止服务器:
命令。
唯一的缺点是,服务器:启动
命令要求pcntl
扩展运行。在Sy欧宝娱乐app下载地址mfony 2.7中,如果您执行服务器:启动
和你没有pcntl
扩展,Symfony会欧宝娱乐app下载地址自动执行服务器:运行
命令。
是一个社区的活跃成员欧宝下载链接
所有这些改进建议和实施的神奇ar 欧宝 。如果你也想成为一个活跃的社区成员,阅读欧宝下载链接nba欧宝直播 并考虑提出新想法,发送请求和审查由其他开发人员提交的代码。
这样做,你可以确保一致的行为是否参数设置。
HTH
Javier Eguiluz is a certified Symfony engineer.
Get certified! Online exams available in all countries.
Register Now简而言之,它可以提供一个默认值为一个请求查询参数,因为它们是可选的,但是它没有意义的容器参数,因为大多数时候你希望他们定义一个值或使应用程序快速失败提醒你。