話說Laravel7便捷的字元串操作 用過Laravel的朋友都知道,Laravel內置的字元串處理函數有瞭解,Illuminate\Support\Str類。 Laravel 7 現在基於這些函數提供了一個更加面向對象的、更加流暢的字元串操作庫。你可以使用 String::of 創建一個 Illu ...
話說Laravel7便捷的字元串操作
用過Laravel的朋友都知道,Laravel內置的字元串處理函數有瞭解,Illuminate\Support\Str類。
Laravel 7 現在基於這些函數提供了一個更加面向對象的、更加流暢的字元串操作庫。你可以使用 String::of 創建一個 Illuminate\Support\Stringable 對象,然後基於該對象提供的方法以鏈式的操作對字元串進行處理:
這裡我們先看一下官方的實例:
return (string) Str::of(' Laravel Framework 6.x ')
->trim()
->replace('6.x', '7.x')
->slug();
上面的代碼,來自官網發行說明,我們很容易看到,每個方法都是幹嘛的。
首先第一步將字元串 Laravel Framework 6.x 使用 Str::of() 方法進行包裹,之後我們就可以使用 Laravel 7 為我們提供的各種流暢的操作方法。
比如 trim() 去除前後空格。 replace() 進行替換,slug() 將字元串變成 slug 的形式
上面的代碼實際運行結果就是:
laravel-framework-7x
上面的方法是不是用起來非常簡單?
接下來我們介紹幾個常用的方法。
before() 方法
返回字元串中給定值之前的所有內容:
Str::of('my website is www.wjcms.net')->before('is');
// 'my website '
同理有 before(),就會有 after()
after() 方法
返回字元串中給定值之後的所有內容。如果字元串中不存在該值,則將返回整個字元串:
Str::of('my website is www.wjcms.net')->after('is');
// ' www.wjcms.net'
append() 方法
將給定值附加到字元串:
Str::of('vue')->append(' cli');
// 'vue cli'
lower() 方法
將字元串轉換為小寫:
Str::of('LARAVEL FRAMEWORK')->lower();
// 'laravel framework'
upper() 方法
將給定的字元串轉換為大寫:
Str::of('laravel')->upper();
// LARAVEL
title() 方法
將給定的字元串轉換為「首字母大寫」:
Str::of('my website is www.wjcms.net')->title();
// 'My Website Is Www.wjcms.net'
substr() 方法
將給定的 start 和 length 參數指定的字元串部分:(從第幾個字元開始截取,截取多少位)
Str::of('Laravel Framework')->substr(8);
// 'Framework'
Str::of('Laravel Framework')->substr(8, 6);
// 'Framew'
ucfirst() 方法
將給定的字元串首字母大寫:
Str::of('my website is www.wjcms.net')->ucfirst();
// 'My website is www.wjcms.net'
words() 方法
限制字元串中的單詞數:
Str::of('my website is www.wjcms.net')->words(3, ' ...');
// 'my website is ...'
length() 方法
返回字元串的長度:
Str::of('Laravel framework')->length();
// 17
ok,以上介紹了一些常用的方法,其實都是文檔上的操作,我只不過那不過來操作演示一遍,更多的用法,請直接查看 文檔
下麵是 所有的方法集合