ob娱乐下载Symfony类型声明、返回类型和PHPUnit)兼容性
如果你遵循的生活在边缘这个博客,你会发现所有的最新最好的每个Symfony版本的新特性。ob娱乐下载或大或小的特性,帮助您创建您的项目,最好的开发人员的经验。
然而,这仅仅是开发活动的一部分需要创建和维护Symfony。ob娱乐下载在这篇文章我们将提及一些变化,但仍需要数百小时的工作看不见的因为他们没有一个闪亮的新功能的一部分。
添加PHP类型声明
PHP类型声明(或“类型提示”)添加信息的函数和方法参数的数据类型。ob娱乐下载没有类型声明,因为Symfony代码,根据ob娱乐下载Symfony发布过程,我们不能马上添加最新的PHP功能,我们需要等到某些Symfony版本被释放来做出改变。ob娱乐下载
ob娱乐下载Symfony 5.0是一个完美的时刻将这些类型声明添加到我们的整个代码库。这是一个艰苦的过程,因为,即使一些工作可以自动化,每个变更必须手动审查。
原因是这不是只有删除PHPdoc注释和添加方法参数的类型。你还需要检查其余的代码寻找数据类型铸件。例如:
1 2 3 4 5 6 7 8
- / * *- * @param bool |零美元启用- * /公共函数setStrictRequirements(启用)+公共函数setStrictRequirements (?bool美元启用){- $ this - > strictRequirements = null = = = $启用?空:(bool)使美元;+ $ this - > strictRequirements = $启用;
检查把请求# 32179要了解这种变化的大小。成千上万的线路已改变了成千上万的文件中,数万小时回顾和合并度过一切。
多亏了@jschaedl,@Simperfit,@Tobion,@Matts,@smoench,@vudaltsov,@julien57,@azjezz,@tigitz,@andreia,@thomasbisignani,@lyrixx,@xabbuh这些变化的贡献。特别感谢@derrabus和协调工作@nicolas-grekas在实际的融合和冲突解决。
添加PHP返回类型
PHP返回类型允许函数和方法指定数据类型的返回值。我们考虑增加这些返回类型在Symfony 5.0但我们终于没有这样做是因为两个原因:ob娱乐下载
- 这个社区将是巨大的负担,因为第三方库和包也应该更新这个新Symfo欧宝体育平台怎么样ny代码兼容,包括返回类型。ob娱乐下载换句话说,Symfony应该最后ob娱乐下载添加这些返回类型,而不是第一个。
- 鉴于Symfony的复杂性和灵活性的代码库,我们需要返回类型协方差,仅可在PHPob娱乐下载 7.4 (Symfony 5。x需要PHP 7.2)。
在任何情况下,我们有一个计划来添加这些返回类型ob娱乐下载Symfony 6.0。检查把请求# 33236看到聪明的技巧用于添加这些多亏了自动返回类型DebugClassLoader
。特别感谢@fancyweb为解决当前所有返回类型中定义(参见PHPdoc注释把请求# 30323)。
兼容所有的PHP和PHPUnit)版本
过去最近的功能,需要一个疯狂的工作量但开发者理所当然是PHPUnit)桥兼容所有PHP版本从5.5到7.4,所有PHPUnit)版本从4.8到8.0。
正如前面提到的,新在Symfoob娱乐下载ny 4.4: PHPUnit) Polyfills博客中,我们添加了很多polyfills PHPUnit)的大部分特性无论PHPUnit)版本中使用您的应用程序。这是Symfony所需的测试也将帮助那ob娱乐下载些与遗留PHP应用程序必须保持广泛的兼容性和PHPUnit)版本。
检查把请求# 32844看到十相关的请求,需要做到这一点。特别感谢@jderusse谁做的大部分工作与此相关的特性。
评论
评论都关门了。
以确保评论保持相关,他们关闭了旧的帖子。
Jörn Wagner is a certified Symfony engineer.
Get certified! Online exams available in all countries.
Register Now