ホームページ >PHPフレームワーク >Laravel >Laravel 8.77 がリリースされ、これらの機能が改善されました。
Laravelの次のチュートリアルコラムでは「Laravel 8.77がリリースされ、こんな機能が改善されました」をご紹介しますので、皆様のお役に立てれば幸いです。
Laravel チームは、プロパティ変換/アクセサーを改善し、DateTime インスタンスとしてデータにアクセスするための date() メソッドのリクエスト、MAC アドレス検証、ストレージ ディスク上のカスタム一時 URL を定義する機能を備えたバージョン 8.77 をリリースしました。 v8.x の最新の変更ブランチ。 [推奨: "laravel ビデオ チュートリアル "]
属性変換/アクセサーの改善Taylor Otwell は、属性アクセサーと修飾子を定義する新しい方法を提供します:// 之前, 两个方法的方式 public function setTitleAttribute($value) { $this->attributes['title'] = strtolower($value); } // 新的方式 protected function title(): Attribute { return new Attribute( set: fn ($value) => strtolower($value), ); }get と set の両方を実装する例を次に示します:
/** * 获取用户的标题 */ protected function title(): Attribute { return new Attribute( get: fn ($value) => strtoupper($value), set: fn ($value) => strtolower($value), ); }詳細については、この機能に関するプル リクエストと、この機能の説明とディスカッションを参照してください。 日時解析がリクエスト インスタンスに追加されました@Italo はリクエスト インスタンスに
date() メソッドを提供し、日付インスタンスの取得を非常に簡単にします。リクエストデータから 利便性:
// 以前 if ($date = $request->input('when')) { $date = Carbon::parse($datetime); } // 之后 $date = $request->date('when');接続ごとのプレフィックスBen Tidy は、Predi で接続ごとにプレフィックスを使用するのに役立ちます。以下は、Redis 構成のプル リクエストの例です:
'redis' => [ 'client' => env('REDIS_CLIENT', 'predis'), 'default' => [ 'host' => env('REDIS_HOST', '127.0.0.1'), 'password' => env('REDIS_PASSWORD', null), 'port' => env('REDIS_PORT', 6379), 'database' => env('REDIS_DB', 0), 'prefix' => env('REDIS_PREFIX', 'prefix:'), ], 'cache' => [ 'host' => env('REDIS_HOST', '127.0.0.1'), 'password' => env('REDIS_PASSWORD', null), 'port' => env('REDIS_PORT', 6379), 'database' => env('REDIS_CACHE_DB', 1), 'prefix' => env('REDIS_PREFIX', 'prefix2:'), ], ],MAC アドレス検証ルールBilal Al-Massry は、MAC アドレスを検証するための
mac_address 検証ルールを提供しました。 :
$trans = $this->getIlluminateArrayTranslator(); $v = new Validator($trans, ['mac' => 'foo'], ['mac' => 'mac_address']); $this->assertFalse($v->passes()); $trans = $this->getIlluminateArrayTranslator(); $v = new Validator($trans, ['mac' => '01-23-45-67-89-ab'], ['mac' => 'mac_address']); $this->assertTrue($v->passes()); $trans = $this->getIlluminateArrayTranslator(); $v = new Validator($trans, ['mac' => '01-23-45-67-89-AB'], ['mac' => 'mac_address']); $this->assertTrue($v->passes());ストレージ一時 URL メソッドの定義Ash Allen は、ストレージ ファサードのカスタム一時 URL ロジックを定義する機能に貢献しました。プル リクエストの例をいくつか示します。
Storage::disk('local') ->buildTemporaryUrlUsing(function ($path, $expiration, $options) { return 'using local'; }); // $url is: 'using local' $url = Storage::temporaryUrl('file.jpg', now()->addMinutes(5));リリース ノート 新機能と更新の完全なリストは、以下の github で確認できます。また、8.76.0 と 8.77.0 の違いも参照できます。次のリリース ノートは、変更ログから直接抜粋したものです: v8.77.0New
(#40077)
(#40058)
元のアドレス: https ://laravel-news.com/laravel-8-77-0翻訳アドレス: https://learnku.com/laravel/t/64602
以上がLaravel 8.77 がリリースされ、これらの機能が改善されました。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。