Heim > PHP-Framework > Laravel > Hauptteil

Laravel 8.73 ist veröffentlicht, welche Updates gibt es?

藏色散人
Freigeben: 2021-11-30 15:24:00
nach vorne
2100 Leute haben es durchsucht

Laravel 8.73 ist veröffentlicht, welche Updates gibt es?

Das Laravel-Team hat 8.73 mit Unterstützung für zählbare Objekte in String-Pluralisierern veröffentlicht, die die Verwendung von Abschlüssen zur Bestimmung der Cache-TTL, der Abfrage-Builder-Methode lazyByIdDesc() und den neuesten Änderungen im v8.x-Zweig ermöglichen.

Dieser Artikel enthält einige Versionen, die in den letzten Tagen aktualisiert wurden, einschließlich der Wiederherstellung in 8.73.1. Bitte aktualisieren Sie daher unbedingt auf die neueste 8.x-Version: 8.73.1 中的恢复,因此请务必更新到最新的 8.x 版本:

将 .phar 添加到被阻止的 PHP 扩展名(8.73)

Stephen Rees-Carter 在文件上传过程中为阻止 PHP 扩展名添加了.phar 扩展名:

默认情况下,Debian 支持执行 .phar 文件以及 .php 和 .phtml 文件,并且应该包含在阻止列表中。

见:salsa.debian.org/php-team/php/-/bl...

这也应该被移植到所有当前支持的 Laravel 版本中。

允许在缓存 remember() 方法中将闭包作为 TTL 传递 (8.73)

Gerard Nesta 贡献了在 Cache::remember() 方法中将 Closure 作为 TTL 传递的方法:

 Cache::remember(
    'count_events_hosted',
    // 现在你可以通过一个闭包来计算 TTL
    function () use ($user) {
        // 当最近的事件结束时过期
        $closestEventEndsAt = $user->hostedEvents()
            ->select('ends_at')
            ->where('starts_at', '>', Date::now())
            ->orderBy('ends_at')
            ->limit(1)
            ->value('ends_at');

        return $closestEventEndsAt ?
            Date::parse($closestEventEndsAt) :
            60;
    },
    function () use ($user) {
        return $user->hostedEvents()->ended()->count();
    });
Nach dem Login kopieren

按降序实现 lazyByIdDesc (8.73)

Moshe Brodsky 贡献了一个 lazyByIdDesc() 方法,该方法通过按降序比较 ID 来对查询结果进行分块,从而延迟查询:

$query->lazyByIdDesc();
Nach dem Login kopieren

在处理大量数据时,您希望首先处理“较新”对象,这会很有用。

PasswordReset 方法用于重置 URL (8.72)

Oliver Kaufmann 的贡献将重置 URL 的生成移动到一个单独的方法中,用于PasswordReset的通知。与VerifyEmail类似,允许用户重写默认的 URL 生成逻辑,而无需覆盖toMail()方法。

为多元化器添加可计数支持 (8.72)

Michael Dyrynda 增加了Str::plural() 方法用于可计数值. 你可以传入任何通过PHP的is_countable()方法检测的内容,此方法实现了Countable接口,你可以将检测项作为第二个参数:

// Arrays
$this->assertSame('users', Str::plural('user', []));
$this->assertSame('user', Str::plural('user', ['one']));
$this->assertSame('users', Str::plural('user', ['one', 'two']));

// Collections
$this->assertSame('users', Str::plural('user', collect()));
$this->assertSame('user', Str::plural('user', collect(['one'])));
$this->assertSame('users', Str::plural('user', collect(['one', 'two'])));
Nach dem Login kopieren

发行说明

您可以在下方查看新功能和更新的完整列表以及 GitHub 上的 8.71.0 和 8.73.1 之间的差异。以下发行说明直接来自 changelog:

v8.73.1

撤销

  • 撤销 使用父级解决SortedMiddleware中的中间件优先级 (#39706)

v8.73.0

添加

  • 在验证器中添加 .phar 以阻止 PHP 扩展(#39666)
  • 允许在 Cache remember() 方法中将闭包作为 ttl 传递 (#39678)
  • 向dependentRules 属性添加了禁止验证规则 (#39677)
  • 按降序实现 lazyById (#39646)

修复

  • 固定 Illuminate/Auth/Notifications/ResetPassword::toMail() (969f101)
  • 修正了 assertSoftDeleted & assertNotSoftDeleted (#39673)

v8.72.0

补充

  • 在 PasswortReset 中添加额外的方法来重置 URL 以匹配 VerifyEmail 的结构 (#39652)
  • 添加对可数表的支持 Illuminate/Support/Pluralizer::plural() (#39641)
  • 允许用户为 migrate 数据迁移指定选项 (#39637)

修复

  • 不为 null 时,仅将 $值强制转换 Illuminate/Database/Query/Builder::limit() (#39644)

改变

  • 使用父节点解析中间件优先级 SortedMiddleware

    .phar zu blockierten PHP-Erweiterungen hinzufügen (8.73)

  • Stephen Rees-Carter während des Datei-Uploads .phar-Erweiterung zum Blockieren von PHP-Erweiterungen:
Standardmäßig unterstützt Debian die Ausführung von .phar-Dateien sowie .php- und .phtml-Dateien und sollte in die Blockierungsliste aufgenommen werden.

Siehe: salsa.debian.org/php-team/php/-/bl...

Dies sollte auch auf alle derzeit unterstützten Laravel-Versionen portiert werden.

Erlaube die Übergabe von Schließungen als TTL in der Cache-remember()-Methode (8.73)

Gerard Nesta hat zur Methode zur Übergabe von Schließung als TTL in der Cache::remember()-Methode:

rrreee

Implementierung von lazyByIdDesc in absteigende Reihenfolge (8.73)

Moshe Brodsky hat eine lazyByIdDesc()-Methode beigesteuert, die Abfrageergebnisse durch den Vergleich von IDs in absteigender Reihenfolge aufteilt und so Abfragen verzögert:🎜rrreee🎜Dies kann bei der Arbeit mit nützlich sein große Datenmengen, bei denen Sie „neuere“ Objekte zuerst verarbeiten möchten. 🎜

PasswordReset-Methode zum Zurücksetzen der URL (8.72)

🎜Beitrag von Oliver Kaufmann hat die Generierung der Reset-URL auf ein In verschoben eine separate Methode, die für die Benachrichtigung über PasswordReset verwendet wird. Ähnlich wie VerifyEmail ermöglicht es Benutzern, die Standard-URL-Generierungslogik zu überschreiben, ohne die Methode toMail() zu überschreiben. 🎜

Zählbare Unterstützung für Pluralisierer hinzufügen (8,72)

🎜Michael Dyrynda hat Str::plural( )hinzugefügt >-Methode wird für zählbare Werte verwendet. Sie können alles übergeben, was von der PHP-Methode is_countable() erkannt wird, die die Schnittstelle Countable implementiert : 🎜rrreee

Versionshinweise

🎜 Unten können Sie die vollständige Liste der neuen Funktionen und Updates sowie die Unterschiede zwischen 8.71.0 und 8.73.1 auf GitHub sehen. Die folgenden Versionshinweise stammen direkt aus dem Changelog: 🎜

v8.73.1

Rückgängig

  • Rückgängig machen verwendet übergeordnetes Element, um die Middleware-Priorität in der SortedMiddleware (#39706)🎜🎜

    v8.73.0

    Hinzufügen

    • .phar im Validator hinzugefügt, um PHP-Erweiterungen zu verhindern (#39666) 🎜
    • Übergabe von Abschlüssen als TTL in der Cache-remember()-Methode zulassen (#39678) 🎜
    • Verbot für Validierungsregeln für das Attribut „dependentRules“ hinzugefügt (#39677). )🎜
    • LazyById in absteigender Reihenfolge implementieren (#39646)🎜🎜

      Behoben

        Behoben Illuminate/Auth/Notifications/ResetPassword::toMail() (969f101)🎜
      • asserSoftDeleted & AssertNotSoftDeleted (#39673) behoben🎜🎜

        v8.72.0

        Supplement

        • Zusätzliche Methoden in PasswortReset hinzufügen um die URL zurückzusetzen, damit sie mit der Struktur von VerifyEmail übereinstimmt (#39652) 🎜
        • Unterstützung für zählbare Tabellen hinzufügen Illuminate/Support/Pluralizer::plural() (# 39641)🎜
        • Benutzer zulassen um Optionen für die Datenmigration anzugeben (#39637)🎜🎜

          Behoben

            Nur wenn nicht null Wandeln Sie den $-Wert umIlluminate/Database/Query/Builder::limit() (#39644)🎜🎜

            Änderung

            • Übergeordneten Knoten verwenden, um Middleware-Priorität aufzulösen SortedMiddleware (#39647)🎜🎜🎜🎜Ursprüngliche Adresse: https://laravel-news.com/laravel-8 -73-0🎜🎜Übersetzungsadresse: https://learnku.com/laravel/t/6🎜🎜Verwandte Empfehlungen: 🎜Die neuesten fünf Laravel-Video-Tutorials 3183🎜 🎜🎜

Das obige ist der detaillierte Inhalt vonLaravel 8.73 ist veröffentlicht, welche Updates gibt es?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:learnku.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!