Catégories
Laravel PHP

Laravel 7.8 disponible !

(Article mis à jour le 30 avril 2020)

Laravel 7.8 est sortie le 24 avril 2020.

Il devient presque difficile de suivre l’actualité des sorties de Laravel tellement elles s’enchaînent régulièrement (une fois par semaine) !

Découvrons toute de suite ce que nous avons au menu de cette nouvelle version.

Laravel 7.8 – Deux nouvelles méthodes de collections ajoutées !

Nous en sommes à 121 méthodes dans les collections !

Les deux nouvelles méthodes sont takeUntil() et takeWhile(). Elles mettent du coup au placard la méthode until() qui était apparue avec la pull request #32262. En attendant sa suppression définitive, la méthode until() devient un simple alias de la méthode takeUntil().

Tu veux en savoir plus sur les collections ? Tu peux lire cet article.

takeUntil()

La méthode takeUntil() va retourner les valeurs d’une collection jusqu’à ce que la condition passée en callback soit vraie.

$collection = collect([1, 2, 3, 4]);

$subset = $collection->takeUntil(function ($item) {
    return $item >= 3;
});

$subset->all();

// [1, 2]

Il est également possible de passer une simple valeur à la fonction. Dans ce cas, le principe reste le même, les valeurs de la collection seront retournées jusqu’à rencontrer la valeur passée en paramètre à la fonction :

$collection = collect([1, 2, 3, 4]);

$subset = $collection->takeUntil(3);

$subset->all();

// [1, 2]

takeWhile()

La méthode takeWhile() fonctionne sur le principe opposé à takeUntil(). Elle va retourner les valeurs d’une collection jusqu’à ce que la fonction de callback renvoie la valeur false :

$collection = collect([1, 2, 3, 4]);

$subset = $collection->takeWhile(function ($item) {
    return $item < 3;
});

$subset->all();

// [1, 2]

Comme pour la méthode takeUntil(), il est possible de lui passer une simple valeur au lieu de la fonction de callback.

Vous trouvez cet article intéressant ?

Ecrire ces articles est passionnant ????, aussi je souhaite y consacrer plus de temps et votre soutien est capital pour cela.
Si vous souhaitez m’encourager et récompenser mon travail, vous pouvez me payer une bière 🍺 ou tout autre montant de votre choix *
Mille mercis 🙏 et maintenant la suite de cet article.
Bonne journée !

* Pas de panique : Le paiement est sécurisé par Paypal

Un nouveau raccourci pour les routes signées

Les méthodes Redirector::signedRoute() et Redirector::temporarySignedRoute() font leur apparitions.

Pour rappel précédemment, les routes signées s’utilisaient ainsi :

redirect()->to(URL::signedRoute(...));

à présent il est possible d’utiliser la syntaxe suivante :

redirect()->signedRoute(...);

ou

redirect()->temporarySignedRoute(...);

L’introduction de ces méthodes a suscité un commentaire de Taylor qui s’interrogeait sur l’utilisation qui en était faite. A retrouver dans la discussion autour du pull request en question.

Tu as envie d’en apprendre plus sur Laravel ? Tu as de la chance, je t’offre 10% de réduction sur ma formation Débuter avec Laravel 7.

Pour cela 2 petites étapes :

  1. Renseigne ce code : 8CWR94 dans ce formulaire
  2. Une fois que c’est fait cliques sur ce lien qui t’amènera sur la page de la formation avec la réduction ! That’s it !

Les bugs corrigés

Les bugs suivants ont étés résolus dans cette version :

  • Fixed compiled route actions without a namespace (#32512)
  • Reset select bindings when setting select (#32531)

La release note complète de Laravel 7.8

Added

  • Added signedRoute() and temporarySignedRoute() methods to Illuminate\Routing\Redirector (#32489)
  • Added takeUntil and takeWhile collection methods (#32494#32496)
  • Added Illuminate\Container\ContextualBindingBuilder::giveTagged() (#32514)
  • Added methods withFragment and withoutFragment to Illuminate\Http\RedirectResponse (11d6bef009959142c67a1a1e741a)
  • Added exclude_without validation rule (4083ae5)

Fixed

  • Fixed compiled route actions without a namespace (#32512)
  • Reset select bindings when setting select (#32531)

Changed

  • Added warn in Illuminate/Support/Facades/Auth::routes() when laravel/ui is not installed (#32482)
  • Added auth to each master on Illuminate\Redis\Connections\PhpRedisConnection::flushdb() (837921b)
  • Register opis key so it is not tied to a deferred service provider (Illuminate/Encryption/EncryptionServiceProvider.php) (62d8a07)
  • Pass status code to schedule finish (#32516)
  • Check route:list –columns option case insensitively (#32521)

Deprecated

  • Deprecate Illuminate\Support\Traits\EnumeratesValues::until (#32517)

A bientôt pour la prochaine sortie de Laravel 😀

Aidez nous à nous améliorer en évaluant cet article :
[Total: 0 Moyenne: 0]

Par Aldew

Absolument passionné depuis toujours par l'informatique et la programmation, je souhaite via ce blog vous faire passer un peu du savoir que j'ai accumulé depuis des années.
Et même, pourquoi pas, vous aider à faire le premier pas dans le développement web.

Vous êtes prêts ?
Alors allons y ensemble et n'oubliez pas que les débutants sont vraiment les bienvenus.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.