PHP setcookie() Tutorial 🎯

beginner
14 min

PHP setcookie() Tutorial 🎯

Welcome to the PHP setcookie() tutorial! In this lesson, we'll learn how to use the setcookie() function to manage cookies in PHP. By the end of this tutorial, you'll be able to create, read, update, and delete cookies in your PHP applications. πŸ“ Note: Before diving into the setcookie() function, let's first understand what cookies are and why we use them.

What are Cookies? πŸ“

Cookies are small text files stored on a user's computer by their web browser at the request of a website. Cookies enable the website to remember user-specific information (like preferences or login state) across multiple visits, improving the user experience and providing essential functionality.

PHP and Cookies πŸ“

PHP has built-in support for handling cookies, making it easy to create, read, update, and delete cookies in your PHP applications. The setcookie() function is the primary tool used to manage cookies in PHP.

The setcookie() Function πŸ’‘ Pro Tip:

The setcookie() function is used to create, modify, or delete cookies in PHP. The function accepts several parameters, which we'll explore in detail in this tutorial.

Basic Usage πŸ’‘ Pro Tip:

Let's start with the simplest example of using the setcookie() function to create a new cookie.

php
<?php // Create a new cookie named "user" with a value of "John Doe" setcookie("user", "John Doe"); ?>

In this example, we create a new cookie named user with the value John Doe. You can change the cookie name and value to suit your needs.

Setting Expiration Date and Path πŸ’‘ Pro Tip:

By default, cookies created with the setcookie() function are session cookies, which are deleted when the user closes their browser. To create persistent cookies that remain on the user's computer for a specific period, you can set an expiration date and path.

php
<?php // Create a new cookie named "user" with a value of "John Doe" and an expiration date of 1 year from now setcookie("user", "John Doe", time() + (86400 * 365), "/"); ?>

In this example, we set the expiration date for the cookie to 1 year from the current time. We also set the path to "/", which means the cookie will be available for the entire website.

Securing Cookies πŸ’‘ Pro Tip:

To secure cookies, you can set the secure parameter to true. This will ensure that the cookie is only sent over secure connections (HTTPS).

php
<?php // Create a secure cookie named "user" with a value of "John Doe" and an expiration date of 1 year from now setcookie("user", "John Doe", time() + (86400 * 365), "/", null, true); ?>

In this example, we set the secure parameter to true, ensuring that the cookie is only sent over secure connections. We also set the domain to null, meaning the cookie will be available for the same domain as the one making the request.

Setting Http-only Cookies πŸ’‘ Pro Tip:

Setting the httponly parameter to true will prevent JavaScript from accessing the cookie. This helps protect against cross-site scripting (XSS) attacks.

php
<?php // Create an http-only cookie named "user" with a value of "John Doe" and an expiration date of 1 year from now setcookie("user", "John Doe", time() + (86400 * 365), "/", null, true, true); ?>

In this example, we set the httponly parameter to true, ensuring that JavaScript cannot access the cookie.

Quiz πŸ’‘ Pro Tip:

Question: What is the purpose of the setcookie() function in PHP?

A: To create a new cookie B: To delete a cookie C: To update a cookie

Correct Answer: A

Explanation: The setcookie() function is used to create a new cookie in PHP.


That's it for our PHP setcookie() tutorial! Now that you understand how to create, modify, and delete cookies using PHP, you can build more robust and user-friendly applications. Remember to be thoughtful when setting cookies and consider user privacy when deciding what information to store and for how long.

Quiz:

Question: Which parameter in the setcookie() function determines the expiration date of a cookie?

A: name B: value C: expire D: path

Correct Answer: C

Explanation: The expire parameter in the setcookie() function determines the expiration date of a cookie.