【Laravel 5.4】新增兩個中介軟體

茄子發表於2017-01-19

原文地址: [https://laravel-news.com/laravel-5-4-middleware]

按計劃我們將於下週迎來 Laravel 5.4 (和新任美國總統川普),它已經包含了許多偉大的新功能,不過團隊又悄悄的貢獻兩個嶄新的中介軟體。TrimStrings 和 ConvertEmptyStringsToNull。

TrimStrings 中介軟體

如名稱所示,TrimStrings 中介軟體會自動修剪所有請求資料,這樣你就不用擔心你的表單欄位中不經意的新增了額外的空格。

例如,假設你有一個需要電子郵件地址的登錄檔單。以前,如果有人輸入了額外的空格,它會像這樣:

dd(request('email'));
// 'demo@example.org '

現在,通過將 TrimStrings 中介軟體新增到 App/Kernel.php:

protected $middleware = [
    \Illuminate\Foundation\Http\Middleware\TrimStrings::class,

這將獲得如下結果:

dd(request('email'));
// 'demo@example.org'

ConvertEmptyStringsToNull 中介軟體

與 TrimStrings 搭配的 ConvertEmptyStringsToNull 中介軟體,其工作方式基本相同。一個較好的適用場景是將表單的非必要欄位對映為資料庫可以為空的列。

例如,假設你有一個增值稅欄位,供使用者輸入報稅編碼。

<input type="text" name="vat" value="">

在以前,如果你把欄位留空它會返回一個空字串:

dd(request('vat'));
// ''

現在通過 ConvertEmptyStringsToNull 的處理,結果為 null :

dd(request('vat'));
// null

Night gathers, and now my watch begins.

相關文章