Laravel est le framework PHP le plus populaire, avec plus de 1,2 million de sites Web construits dessus. Depuis sa sortie en juin 2011, Laravel a attiré l'attention de nombreux développeurs web, se présentant comme le framework PHP le plus utilisé.

Laravel offre un environnement de développement rapide, une sécurité et de bons guides de développement. Créé et maintenu par son créateur Taylor Otwell, Laravel a continué à apporter des améliorations à son logiciel. Il suit un schéma de version sémantique et est actuellement à la version 8.x.

Voici huit nouvelles fonctionnalités à rechercher dans Laravel 8.

1. Laravel Jetstream

Il s'agit de la nouvelle fonctionnalité d'échafaudage d'applications dans Laravel. Il est livré avec des fonctionnalités prêtes à l'emploi telles que le suivi de session, la connexion, l'enregistrement, la vérification des e-mails, l'authentification à deux facteurs et la gestion d'équipe en option.

Jetstream offre le choix entre deux options d'échafaudage: Livewire et Inertia.

instagram viewer

Livewire est une bibliothèque réactive et dynamique qui offre la possibilité d'éviter d'utiliser un Framework JavaScript comme Vue.js. Il utilise le langage de création de modèles Blade par défaut. Livewire offre également la possibilité de choisir entre quitter Blade ou utiliser Vue.js.

Inertia utilise Vue.js comme langage de modélisation.

Lire la suite: Qu'est-ce que Vue.js?

Il donne toute la puissance de Vue.js sans avoir besoin d'un routage côté client. Si Vue est votre langage de modélisation préféré, alors la pile Inertia est un bon choix.

2. Migration écrasée

Au fur et à mesure que vous développez votre application, vos migrations peuvent s'accumuler. Vous pouvez les «écraser» en un seul fichier SQL pour éviter le cliquetis. Cette option est disponible pour les utilisateurs MySQL ou PostgreSQL.

Laravel créera un fichier de schéma lorsque la commande schéma: vidage est exécuté. Lorsque vous essayez de migrer votre base de données, Laravel procédera d'abord à la migration du fichier SQL associé à votre schéma. Par la suite, s'il y a des migrations qui ne faisaient pas partie du schéma, elles seront alors exécutées.

3. CSS de Tailwind

Laravel utilise désormais le framework CSS Tailwind comme paginateur par défaut. Tailwind est une première bibliothèque CSS qui fournit des classes CSS à usage unique. Il offre l'avantage d'avoir vos informations de style au même endroit plutôt que de les disperser. Vous pouvez appliquer des classes prédéfinies directement à votre document HTML.

Tailwind offre également la possibilité de créer des conceptions réactives. Il propose un premier système mobile similaire à celui de Bootstrap. Cela implique que les utilitaires non préfixés répondent sur toutes les tailles d'écran tandis que les utilitaires préfixés entrent en vigueur à des points particuliers.

Tailwind propose également un mode juste-à-temps activé pour que vos styles soient générés à la demande plutôt que d'avoir tout rendu au moment de la construction initiale. Cela le rend plus rapide que l'utilisation de CSS ordinaire. Un autre avantage que cela offre est que vous n'avez pas besoin de vous débarrasser de vos styles de production inutilisés, ce qui vous permet d'utiliser votre code dans plusieurs environnements.

Il est également intéressant de noter que Laravel Jetstream a été construit en utilisant Tailwind.

4. Lot de travaux

Vous pouvez utiliser cette fonction pour exécuter un lot de travaux à un moment donné et effectuer une ou plusieurs actions une fois leur exécution terminée. le Façade de bus fournit une méthode par lots qui vous permet de répartir les travaux.

Vous pouvez effectuer cela en tandem avec d'autres rappels d'achèvement tels que attraper, ensuite et finalement pour ajouter des fonctionnalités à vos travaux.

utilisez App \ Jobs \ ProcessPodcast;
utilisez App \ Podcast;
utilisez Illuminate \ Bus \ Batch;
utilisez Illuminate \ Support \ Facades \ Bus;
utilisez Throwable;
$ batch = Bus:: batch ([
nouveau ProcessPodcast (Podcast:: find (1)),
nouveau ProcessPodcast (Podcast:: find (2)),
nouveau ProcessPodcast (Podcast:: find (3)),
nouveau ProcessPodcast (Podcast:: find (4)),
nouveau ProcessPodcast (Podcast:: find (5)),
]) -> alors (fonction (Batch $ batch) {
// Tous les travaux se sont terminés avec succès ...
}) -> catch (function (Batch $ batch, Throwable $ e) {
// Premier échec du travail par lots détecté ...
}) -> enfin (fonction (Batch $ batch) {
// Le batch a fini de s'exécuter ...
}) -> dispatch ();
retourne $ batch-> id;

Pour commencer, vous devez créer une table de migration qui contiendra des métadonnées de travail telles que les taux d'achèvement. Utilisez la commande file d'attente artisanale php: table des lots pour faire ça. Et alors php artisan migrer pour les migrer. Vous pouvez maintenant définir vos travaux par lots, puis les expédier lorsque vous êtes prêt.

5. Classes d'usine de modèles

Tout d'abord, parlons des usines modèles. Ceux-ci sont utilisés pour amorcer vos bases de données avec des données de test. Ces fausses données sont importantes à des fins de test avant l'insertion de données utilisateur réelles.

Dans Laravel 8, les anciennes classes modèles Eloquent ont été complètement remplacées par des usines basées sur les classes. Avec cela, vous pouvez désormais gérer les états des objets en utilisant simplement des méthodes. Ces méthodes appellent généralement le Etat() , qui est donnée dans la classe de fabrique de base Laravel. le Etat() La méthode prend comme argument une fonction qui prendra dans un tableau d'attributs assignés à la fabrique.

6. Maintenance améliorée

Auparavant, Laravel présentait une liste d'adresses IP que vous pouviez utiliser pour accéder à l'application en mode maintenance. Cela a été supprimé et remplacé par une solution «secrète» plus simple. Vous pouvez spécifier le jeton de contournement à l'aide du secret option.

En mode maintenance, vous pouvez accéder à l'URL de votre application et Laravel transmettra automatiquement le cookie de contournement à votre navigateur. Une fois le cookie émis, vous accéderez à l'application normalement comme si elle n'était pas en mode maintenance.

Vos utilisateurs peuvent rencontrer des erreurs si vous utilisez le PHP artisan vers le bas pendant le déploiement. Pour éviter cela, Laravel offre la possibilité de restituer une vue en mode maintenance qui sera renvoyée chaque fois qu'une demande est faite. Vous pouvez pré-rendre un modèle à l'aide de l'option de rendu de la commande vers le bas.

7. Aides aux tests de temps

Laravel inclut désormais la possibilité de vous permettre de manipuler l'heure actuelle. Vous avez la possibilité d'utiliser vos attributs de temps en millisecondes, heures, jours, etc.

fonction publique testTimeCanBeManipulated ()
{
// Voyage dans le futur ...
$ this-> travel (5) -> millisecondes ();
$ this-> voyage (5) -> secondes ();
$ this-> voyage (5) -> minutes ();
$ this-> voyage (5) -> heures ();
$ this-> voyage (5) -> jours ();
$ this-> voyage (5) -> semaines ();
$ this-> travel (5) -> years ();
// Voyage dans le passé ...
$ this-> voyage (-5) -> heures ();
// Voyage à un temps explicite ...
$ this-> travelTo (now () -> subHours (6));
// Revenir au temps présent ...
$ this-> travelBack ();
}

Ces fonctions d'assistance rendent votre travail soigné et facile à suivre en donnant des noms descriptifs aux méthodes.

8. Limitation de débit améliorée

La limitation de débit vous permet de gérer la quantité de trafic que vous recevez sur un certain itinéraire ou groupe d'itinéraires. Ceci peut être réalisé en utilisant le middleware d'accélérateur. L'intergiciel throttle prend le nom du limiteur de vitesse que vous souhaitez utiliser sur une route. Un code de requête HTTP (429) est renvoyé si la requête entrante dépasse une limite de débit donnée.

Dans Laravel 8, le limiteur de fréquence a été construit avec plus de flexibilité tout en conservant une compatibilité descendante. La fonction de rappel du limiteur de débit vous permet de créer dynamiquement des limites de débit appropriées établies sur des utilisateurs authentifiés ou des demandes entrantes.

Temps passionnant à venir pour Laravel

Laravel est facile à apprendre et fournit un guide de développeur élaboré avec des exemples faciles à suivre. Il fournit des corrections de bogues et des correctifs sur une base presque hebdomadaire et des versions majeures chaque année (vers septembre). Si vous avez besoin de plus d'aide, Laravel fournit la plate-forme Laracasts sur laquelle vous pouvez obtenir l'aide d'un expert. La plate-forme fournit cependant des leçons de développement Web payantes.

Pour un développeur Web, Laravel est une compétence incontournable. Il est open source, gratuit et avec une communauté de plus de 40 000 utilisateurs. C'est une technologie qu'il vaut la peine de suivre.

E-mail
5 cadres Web qui méritent d'être étudiés pour les développeurs

Vous souhaitez apprendre le développement Web avancé? Évitez d'écrire des codes répétitifs, utilisez plutôt ces frameworks de développement Web.

Lire la suite

Rubriques connexes
  • Programmation
  • Développement web
  • Programmation PHP
A propos de l'auteur
Jérôme Davidson (2 articles publiés)Plus de Jerome Davidson

Abonnez-vous à notre newsletter

Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives!

Un pas de plus…!

Veuillez confirmer votre adresse e-mail dans l'e-mail que nous venons de vous envoyer.

.