Laravel 5.4 及 5.5 中的全新字符串辅助方法

Laravel 5.5 已经确定预计在 2017年 Laravel 欧洲大会上正式发布。这次重大升级,也带来了一些新的字符串相关的辅助方法。

以下介绍一些最近比较火的字符串辅助方法,他们最近已经得到了许多 Laravel 开发者的喜爱。

str_start() 方法

str_start() 辅助方法是由 Caleb Porzio 在 Laravel 5.4 分支中贡献的。这个方法用于确定字符串的开头有且仅有一个特定的字符。

比如我们在进行 URL 或者 Path 的拼接时,如何确保只含一个路径分隔符"/"呢?

以往可能是这样做的:

$path = rtrim(BASE_DIR, "/") .  "/" .  ltrim($filepath, "/");

rtrim 移除 BASE_DIR 末尾可能包括的 "/",再用 ltrim 移除 $filepath 开头可能包括的 "/".

现在通过 Str::start() 方法,可以这样做:

$path = rtrim(BASE_DIR, '/') . str_start($filepath, '/');

str_before() 方法

str_before() 方法上个月已经合并到[随着 laravel/framework 的 master 分支],它的作用与 str_after 方法正好相反。

举个栗子,你要获取 Email 地址中的用户名部分:

echo str_before('[email protected]', '@');
//  输出:kairee

这个方法会随 Laravel 5.5 一起发布。

str_after() 方法

str_after() 方法返回字符串中给定值之后的全部内容。依然以刚才那个 Email 的例子来说,假如要获取邮箱中的域名部分:

echo str_after('[email protected], '@');
// 输出 ofcss.tld

这个方法依然是由前面提到的Caleb Porzio今年早些时候贡献的。

了解全部辅助方法

Laravel 提供了大量有关字符串、数组、URL的辅助方法。建议开发者可以经常性地查看一下 官方文档中的辅助方法部分。相信你经常能够有所收获。

本条目发布于。属于PHP分类,被贴了 标签。