Comment obtenir et définir des cookies dans Laravel 10

Dans le contexte de Laravel, les cookies sont encore de petits éléments de données utilisés pour mémoriser des informations sur les utilisateurs, mais ils sont gérés spécifiquement à l'aide des fonctionnalités intégrées du framework Laravel.

Dans ce didacticiel, nous allons apprendre comment obtenir et définir des cookies dans Laravel 10. Avant de commencer à travailler avec des cookies dans Laravel 10, assurez-vous d'avoir les éléments suivants :

  • Laravel 10 installé : Si vous n'avez pas déjà installé Laravel 10, vous pouvez suivre le guide d'installation officiel de Laravel pour le faire fonctionner.
  • Compréhension de base de PHP : Une certaine familiarité avec PHP sera utile mais pas obligatoire.
  • Éditeur de code : utilisez un éditeur de code de votre choix. Visual Studio Code, PhpStorm ou Sublime Text sont des options populaires.

Passons maintenant aux étapes pour obtenir et définir des cookies dans Laravel 10.

Étape 1 : Obtenir des cookies dans Laravel 10

Pour récupérer les cookies dans Laravel, vous pouvez utiliser la request()méthode. Laravel décrypte et analyse automatiquement les cookies entrants. Voici comment obtenir une valeur de cookie :

public function getCookie(Request $request)
{
    $cookieValue = $request->cookie('cookie_name');
    // Now, $cookieValue holds the value of 'cookie_name' if it exists.
}

Dans le code ci-dessus :

  • Request $request: Ce paramètre injecte l'objet requête dans votre méthode.
  • cookie('cookie_name'): Utilisez la cookie()méthode pour récupérer la valeur d'un cookie spécifique. Remplacez 'cookie_name'par le nom du cookie souhaité.

Étape 2 : Définition des cookies dans Laravel 10

Définir des cookies dans Laravel est tout aussi simple. Vous pouvez utiliser la cookie()fonction d'assistance pour créer et envoyer un cookie au navigateur de l'utilisateur. Voici comment définir un cookie :

public function setCookie()
{
    $cookieValue = 'Hello, Laravel 10 Cookies!';
    $cookie = cookie('cookie_name', $cookieValue, $minutes = 60);
    
    return response()
        ->withCookie($cookie);
}

Dans le code ci-dessus :

  • $cookieValue: Cette variable contient la valeur que vous souhaitez stocker dans le cookie.
  • cookie('cookie_name', $cookieValue, $minutes = 60): La cookie()fonction d'assistance prend trois paramètres :
    • 'cookie_name': Remplacez-le par le nom de cookie souhaité.
    • $cookieValue: Les données que vous souhaitez stocker dans le cookie.
    • $minutes: Le nombre de minutes avant l'expiration du cookie.

Exemple pratique

Mettons ces concepts en pratique avec un exemple pratique. Imaginez que vous souhaitiez créer un cookie pour mémoriser le thème préféré de l'utilisateur (clair ou sombre) sur votre site Web. Voici comment procéder :

public function setThemeCookie($theme)
{
    // Validating the theme value (optional)
    if ($theme !== 'light' && $theme !== 'dark') {
        return redirect()->route('home')->with('error', 'Invalid theme selection.');
    }

    // Setting the cookie
    $cookie = cookie('theme', $theme, 1440); // Expires in 24 hours (60 minutes * 24 hours)

    return redirect()->route('home')->withCookie($cookie);
}

Dans cet exemple, la setThemeCookieméthode accepte le thème comme paramètre, le valide, puis définit un cookie nommé 'theme'avec la valeur sélectionnée. Le cookie expirera dans 24 heures.

Conclusion

Dans ce didacticiel, nous avons couvert les bases de l'obtention et de la configuration des cookies dans Laravel 10, en ciblant les débutants. N'oubliez pas que les cookies doivent être utilisés de manière responsable et à des fins légitimes afin de garantir une expérience utilisateur positive sur votre site Web.

1.05 GEEK