拉拉维尔弦降低

2022-08-30 16:25:41

我正在尝试在视图页(index.blade.php)中将字符串转换为小写字母

以下是我想要实现的目标。

<img src="images/teamnamesml.jpg logo">

这是我的尝试

<img src="images/{{ Str::lower($matchup->visitorTeam) }}sml.jpg">

我收到此错误

FatalErrorException in ed1bb29e73e623d0f837c841ed066275 line 71:
Class 'Str' not found

我是否必须将类导入到特定文件?Illuminate\Support\Str


答案 1

为什么不直接使用PHP内置的strtolower呢

<img src="images/{{ strtolower($matchup->visitorTeam) }}sml.jpg">

或者,如果您需要完整的 UTF-8 支持,您可以使用 mb_strtolower($string,'UTF-8'),它允许元音变音和其他有趣的 UTF-8 内容。这就是Laravel的Str::lower()函数所做的。


答案 2

因为在评论中,你仍然问,它是如何以Laravel的方式工作的,所以这里旁边有一个替代解决方案 和 ,这也很好。strtolowermb_strtolower

你必须在方法前面添加namsepace,PHP和Laravel可以找到该方法。

因此,如果要在 Blade 中使用它,请执行以下操作:

<img src="images/{{ Illuminate\Support\Str::lower($matchup->visitorTeam) }}sml.jpg">

如果要在控制器或模型中使用它,则必须添加命名空间,其中位于顶部:Str

use Illuminate\Support\Str;

之后,您可以在没有命名空间前缀的情况下调用它:

Str::lower($test);

推荐