新在Symfoob娱乐下载ny 2.8: YAML的用法
2016年3月2日·发表的哈维尔Eguiluz
警告:这篇文章是关于一个不受支持的Symfony的版本。ob娱乐下载其中一些信息可能是过时了。阅读最近的Symfony文档ob娱乐下载。
即将到来的Symfony ob娱乐下载3.1版本将推出很多新的和有用的特性的Yaml组件。但在享受这些特性,在Symfony 2.8我们需要反对一些特性使Yaml文件符ob娱乐下载合Yaml规范。之前一定要解决所有这些变化将应用程序升级到Symfony 3。ob娱乐下载
弃用非转义\
在双引号字符串
这个反对是常见的在定义服务的类:
1 2 3
app.user_manager:类:“AppBundle \经理\ UserManager”#……
另一种选择是把双引号或逃避\
反斜杠翻倍:
1 2 3 4 5 6
app.user_manager:#删除双引号…类:AppBundle \ \ UserManager经理#……或逃避反斜杠类:“AppBundle \ \经理\ \ UserManager”#……
不赞成使用@
在非上市字符串的开始
这个弃用有很大的影响,因为大量的服务使用@service_id
符号来定义他们的依赖关系:
1 2 3
app.user_manager:#……参数:[@router,@logger,@doctrine.orm.entity_manager)
根据Yaml规范,非上市字符串不能开始@
,所以你必须将这些参数与单引号或双引号:
1 2 3
app.user_manager:#……参数:[' @router ',“@logger”,“@doctrine.orm.entity_manager”]
不赞成使用的保留字符非上市字符串的开始
这些用法应该Symfony的低影响开发人员,因为它是常见的使用这些字符作为非上市字符串的开始:ob娱乐下载
1 2 3
app.user_manager:#……参数:['字符串',|字符串,>字符串)
解决方案是将这些字符串用单引号或双引号:
1 2 3
app.user_manager:#……参数:(“字符串”,“|字符串”,“>字符串”]
用法总是疼痛为开发人员和我们尽量避免他们尽可能。但允许创建Yaml文件不尊重官方规范无疑是错误的。最近Symfony 3ob娱乐下载.0版是一个完美的时间来解决这些问题。
发表在#生活在边缘
评论
马克西姆Pasquier
说3月4日,2016年在15:13
我需要检查我所有的YAML文件吗?还是YAML不支持发送警告/错误?
@David Grudl氖至少需要PHP 5.6这使得它不可能使用Symfony至少需要5.5,迫使更高版本是不可能的。ob娱乐下载
评论都关门了。
以确保评论保持相关,他们关闭了旧的帖子。
使用单引号是什么包装全限定类名吗?
这还需要双反斜杠吗?
参数是什么?因为@foo现在必须引用,也许可能是一个很好的实践引用“%参数%”吗?
它已经由一些Symfony开发人员使用。ob娱乐下载
所以我认为这将是3.1
Christian Flothmann is a certified Symfony engineer and a certified Twig designer.
Get certified! Online exams available in all countries.
Register Now