Laravel 5.8 新特性系列 —— 废弃全局的字符串和数组相关辅助函数


在即将到来的 Laravel 5.8 发行版中,全局的字符串和数组相关辅助函数将会被废弃,并且在 Laravel 5.9 中被彻底移除,你可以在 PR #26898 中查看完整的被废弃赋值函数列表。

这些被废弃的辅助函数在以后的版本中会换一种引用方式,你需要通过 \Illuminate\Support\StrIlluminate\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


Vote Vote Cancel Collect Collect Cancel

<< 上一篇: Laravel 5.8 新特性系列 —— 支持策略类自动解析功能

>> 下一篇: Laravel 5.8 新特性系列 —— 缓存有效期单位调整