PHP - $_COOKIE: Pandangan Awal Manis tentang Kepersistencean Web
Hai sana, para ahli PHP masa depan! Hari ini, kita akan melihat dunia yang lezat dari cookies. Tidak, bukan jenis yang kamu rebahkan dalam susu (walaupun saya tidak keberatan jika ada satu sekarang ini). Kita membahas cookies web, konsep dasar dalam pengembangan web yang akan kamu gunakan berulang-ulang dalam perjalanan coding kamu.
Apa Itu Cookie?
Imaginalkan kamu mengunjungi toko online favoritmu. Kamu menambahkan beberapa item ke keranjangmu, tetapi kemudian kucingmu memutuskan bahwa saat ini adalah waktu yang sempurna untuk mengejar ekornya, dan kamu terganggu. Ketika kamu kembali ke situs itu kemudian, tidak akan baik jika item keranjangmu masih ada di sana? Itu adalah tempat cookies berada!
Cookie adalah sepotong kecil data yang sebuah website menyimpan di komputer pengguna. Itu seperti catatan kecil yang website tinggalkan untuk mengingat informasi tentangmu atau preferensimu. Cookies membantu membuat penelusuran web menjadi lebih personal dan mudah.
Dalam PHP, kita menggunakan array superglobal $_COOKIE
untuk bekerja dengan cookies. Array ini berisi semua nilai cookie yang dikirim oleh browser untuk halaman saat ini.
Fungsi setcookie()
Sebelum kita mulai membuat cookies digital kita, mari kita lihat alat utama yang akan kita gunakan: fungsi setcookie()
. Fungsi PHP ini memungkinkan kita untuk membuat atau memodifikasi cookie.
Ini adalah sintaksis dasar:
setcookie(name, value, expire, path, domain, secure, httponly);
Mari kitaura parameter ini:
Parameter | Deskripsi | Diperlukan? |
---|---|---|
name | Nama cookie | Ya |
value | Nilai cookie | Tidak |
expire | Waktu kedaluwarsa cookie (dalam timestamp Unix) | Tidak |
path | Path di server tempat cookie tersedia | Tidak |
domain | Domain tempat cookie tersedia | Tidak |
secure | Menandakan jika cookie hanya boleh dikirim melalui koneksi HTTPS aman | Tidak |
httponly | Jika diatur ke TRUE, cookie hanya dapat diakses melalui protokol HTTP | Tidak |
Jangan khawatir jika ini terlihat menakutkan. Kita akan melalui setiap parameter ini secara rinci saat kita maju.
Cara Mengatur Cookies
Sekarang, mari kita meraba dan mengatur beberapa cookies! Ingat, mengatur cookie adalah seperti meninggalkan catatan untuk kemudian. Ini adalah contoh sederhana:
<?php
setcookie("user_name", "John Doe", time() + (86400 * 30), "/");
?>
Dalam contoh ini:
- Kita mengatur cookie bernama "user_name"
- Nilainya adalah "John Doe"
- Itu akan kadaluwarsa dalam 30 hari (86400 detik * 30)
- Itu akan tersedia di seluruh website ("/")
Setelah mengatur cookie, kamu dapat mengaksesnya menggunakan array superglobal $_COOKIE
:
<?php
if(isset($_COOKIE['user_name'])) {
echo "Selamat kembali, " . $_COOKIE['user_name'] . "!";
} else {
echo "Selamat datang, pengguna baru!";
}
?>
Kode ini memeriksa jika cookie 'user_name' ada. Jika ada, itu menyapa pengguna dengan nama. Jika tidak, itu menganggap itu adalah pengguna baru.
Cara Menghapus Cookies
kadang-kadang, kamu perlu membersihkan cookie jar. Untuk menghapus cookie, kamu dapat mengatur waktu kedaluwarsa nya ke masa lalu:
<?php
setcookie("user_name", "", time() - 3600);
?>
Ini mengatur cookie "user_name" untuk kadaluwarsa satu jam sebelumnya, secara efektif menghapusnya.
Mengatur Cookies Menggunakan Notasi Array
Apa jika kamu ingin menyimpan data yang lebih kompleks dalam cookies? PHP memungkinkanmu untuk menggunakan notasi array saat mengatur cookies. Ini sangat berguna saat kamu ingin mengelompokkan data yang terkait.
Ini adalah contoh:
<?php
setcookie("user[name]", "John Doe", time() + (86400 * 30), "/");
setcookie("user[email]", "[email protected]", time() + (86400 * 30), "/");
setcookie("user[preferences][theme]", "dark", time() + (86400 * 30), "/");
?>
Dalam kasus ini, kita mengatur beberapa cookie di bawah nama "user". Untuk mengakses nilai ini kemudian:
<?php
if(isset($_COOKIE['user'])) {
echo "Name: " . $_COOKIE['user']['name'] . "<br>";
echo "Email: " . $_COOKIE['user']['email'] . "<br>";
echo "Preferred Theme: " . $_COOKIE['user']['preferences']['theme'];
}
?>
Pendekatan ini memungkinkanmu untuk mengatur data cookie kamu dalam cara yang lebih terstruktur.
Ingat, bekerja dengan cookies adalah seperti meninggalkan catatan untuk dirimu sendiri (atau pengunjung websitemu). Mereka sangat berguna untuk menjaga state di antara muatan halaman, mengingat preferensi pengguna, atau mengimplementasikan fitur seperti "Remember Me" di formulir masuk.
Saat kamu terus melanjutkan perjalanan PHPmu, kamu akan menemukan banyak penggunaan lain untuk cookies. Mereka adalah alat dasar dalam pengembangan web, dan menguasaimu akan membuatmu menjadi pengembang yang lebih efektif.
Jadi, maju dan bikin beberapa cookies yang lezat! (Dan mungkinambil cookie nyata saat kamu sedang coding – coding membuatmu��i hungry!)
Credits: Image by storyset