ホームページ >PHPフレームワーク >Laravel >Laravel7.6がリリースされました! ! !
Laravel チームは昨日 v7.6.0 をリリースしました。これには 13 の新機能と 7.x ブランチの最新の修正と変更が含まれています:
#コレクションに「until」メソッドを追加しました
Jason McCreary は、Collection::until() メソッドを提供しました。このメソッドは、要素が条件を満たすまでコレクションをループし、要素を返すことができます。
// Before [$before, $after] = $primes->partition(function ($item) { return $item < 11; }); $before->dump(); // Using until $passed = $primes->until(11)->dump();This メソッドクロージャまたはコレクションと比較した値を使用します。
String Empty メソッド
Mark van den Broek は、Stringable および HtmlString 用の便利なメソッドをいくつか提供しています。 1 つ目は、HtmlString::isEmpty() メソッドにより、空のインスタンスの検出が容易になります。
$string = new \Illuminate\Support\HtmlString(''); // Previously if (empty($string->toHtml())) // Using isEmpty if ($string->isEmpty())2 つ目は、Mark は
isNotEmpty() にも貢献しました。 Method
use Illuminate\Support\Stringable; (new Stringable())->isNotEmpty(); // false (new Stringable('Hello World'))->isNotEmpty(); // true
Stringable クラスの Trim メソッド
Ryan Chandler は、Stringable クラスに ltrim メソッドと rtrim メソッドを提供しました。これにより、文字列の先頭と末尾の文字をトリミングできます。 string:use Illuminate\Support\Stringable; echo (new Stringable(' Hello World'))->ltrim(); // 'Hello World' echo (new Stringable('Hello World '))->rtrim(); // 'Hello World' echo (new Stringable('/example/'))->rtrim('/'); // '/example'
特定のルートのミドルウェアを無視する
@dsazup は、ルートを定義するときにミドルウェアをスキップする機能を提供します:Route::get('/something') ->skipMiddleware(VerifyCsrfToken::class) Route::get('/teams/create') ->skipMiddleware(VerifyUserHasTeam::class)
Http client : JSON 応答をオブジェクトとして取得
Adrian Nürnberger は、JSON 応答本文を連想配列ではなくオブジェクトとして返すobject() メソッドを提供しました:
// Array access Http::get('some-api.wip')['result']; // Using json() $response = Http::get('some-api.wip')->json(); $response['result'] // New option $response = Http::get('some-api.wip')->object(); $response->result;
コンポーネントのエイリアス
Dries Vints による寄稿 コンポーネントのエイリアスの設定: コンポーネントのコンテンツを条件付きでレンダリングする必要があるシナリオに遭遇しました。その別名に基づいています。たとえば、Svg コンポーネントがあり、そのコンポーネントのエイリアスとして71184b1345eda804fca2db664de2b690 を次のように使用する場合:
Blade::component(Svg::class, 'heroicon-o-bell');This is better than
d83b4d8a88cde115fa706f73a95a53ef この方法はより簡潔です。 Component クラスにエイリアスを追加すると、Blade コンポーネントに多くの新しい用途と可能性が追加されます...
Eloquent コレクション全体に属性を追加
// Before Laravel 7.6 $collection->each(function($model) { $model->append($attribute) }); // Append method $collection->append($attribute);
Retry-After メソッドをサポート
@RyanDaDeng はメソッド レベルのサポートに貢献しました。キュー リスナーの retryAfter を補足して、より高度なユースケースに適用します:// listener implementation public function retryAfter() { // 自定义 retryAfter 逻辑 }
Support Composer new version selected.json format
Jakub Arbet の新しいバージョンでのスナップショット機能のサポートComposer 2 (まだ安定していません) ですが、composer の古いバージョンとの下位互換性があります: composer の最新スナップショット バージョンで変更されましたvendor/composer/installed.json 形式なので、破壊されますパッケージを自動検出する機能。この PR は、composer の以前のバージョンとの下位互換性を通じてこの問題に対処します。
UUID は、change をサポートします
Mathieu Tudisco は、uuid 列でのchange() メソッドの使用をサポートしています。これより前は、次のエラーが発生していました。発生:
Unknown column type “uuid” requested.
リリース ノート
7.5.0 および 7.6.0 とともに、以下の GitHub で新機能と更新の完全なリストを確認できます](https://github.com/laravel/framework/compare/v7.5.0...v7.6.0)。 Laravel 7.x の完全なリリースノートは、最新の v7 変更ログ:
v7.6.0
New# にあります。 ##●
Collection::until()HtmlString::isEmpty () メソッド (#32289
, #32300)●
新しいクラス ltrim()
および rtrim()## を追加しました # Method (
#32288)
#● ミドルウェア無視機能を追加 (#32347、
) ● ## を追加#Illuminate\Http\Client\Response::object() メソッド (#32341
)#● コンポーネント エイリアスの設定のサポート (32346
)
メソッド (#32324)
を追加しました# BelongsToMany のピボット列は、新しい「between」ステートメントを追加します (#32364)
● キュー監視は retryAfter()
メソッド ( #32370 )
#32310)
# データベース移行ファイルでの UUID 変更のサポートを追加しました(#32316)
# postgresql bytea へのリソースの保存を許可 (##32319修正済み● phpredis の
*scan メソッドを修正 (#32336
)#● Illuminate\Auth\Notifications\ResetPassword::toMail()# を修正## (
)#●
Illuminate\Translation\Translator::__construct() で setLocale (1c6a504
を呼び出します。 # Illuminate\Http\Resources\Json\PaginatedResourceResponse::toResponse() の不要な配列アクセスを防ぐためにマッピングを使用する
(#32296)
#32311)
#● Illuminate\Database\Schema\Grammars\MySqlGrammar の CURRENT_TIMESTAMP の精度のバグを修正します (
● HtmlString のコンストラクターにより、デフォルト値 (
) が増加します。 )
#BindingResolutionExceptionIlluminate\Validation\Concerns\ValidatesAttributes.php :: validateUrl() Symfony/Validator 5.0.7
を使用 (#32315)
非推奨
# # ● 非推奨の
elixir 関数 (#32366
この記事は転載されています:
元のアドレス: https://learnku. com/laravel/t/43480
以上がLaravel7.6がリリースされました! ! !の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。