Laravel 5.8 新特性系列 —— 废弃全局的字符串和数组相关辅助函数
在即将到来的 Laravel 5.8 发行版中,全局的字符串和数组相关辅助函数将会被废弃,并且在 Laravel 5.9 中被彻底移除,你可以在 PR #26898 中查看完整的被废弃赋值函数列表。
这些被废弃的辅助函数在以后的版本中会换一种引用方式,你需要通过 \Illuminate\Support\Str
和 Illuminate\Support\Arr
类来引用它们(这么做的根本原因是将函数式编程收敛为面向对象编程):
// Deprecated
array_add($array, $key, $value);
// Use this directly
Arr::add($array, $key, $value);
如果你确实更喜欢使用辅助函数的话,Taylor Otwell(Laravel框架作者)的建议是将这些废弃的辅助函数提取出来,封装到单独的扩展包中,比如 laravel/helpers
,如果你要使用它们的话,可以通过安装相应的扩展包来引入。
你可以在即将发布的 Laravel 5.8 升级文档中看到相关升级说明:
这一变动的影响被标记为中等,因为在未来版本中,可选的扩展包将降低任何变动带来的风险。
需要提醒的是,关于这些辅助函数的废弃处理,目前还处在早期阶段,关于上面提到的可选扩展包如何推进还没有任何定论。不过很明显,如果大家强烈要求的话,Laravel 自然会提供这样的官方扩展包。
注:本文整理自 Laravel News。
No Comments