Contoh berikut membuat cookie bernama "pengguna" dengan nilai "John Doe". Cookie akan kedaluwarsa setelah 30 hari (86400 * 30). Tanda "/" berarti cookie tersedia di seluruh situs web (jika tidak, pilih direktori yang Anda inginkan)
Kami kemudian mengambil nilai cookie "pengguna" (menggunakan variabel global $_COOKIE). Kami juga menggunakan fungsi isset() untuk mengetahui apakah cookie sudah disetel
$nama_cookie = "pengguna";
$cookie_value = "John Doe";
setcookie($nama_cookie, $nilai_cookie, waktu() + (86400 * 30), "/");
?>
jika(. isset($_COOKIE[$cookie_name])) {
gema "Kue bernama '". $nama_kuki. "' tidak diatur. ";
} kalau tidak {
gema "Kue '". $nama_kuki. "' sudah diatur
";
gema "Nilai adalah. ". $_COOKIE[$nama_cookie];
}
?>
Definisi dan Penggunaan
Fungsi setcookie() mendefinisikan cookie untuk dikirim bersama dengan header HTTP lainnya
Cookie sering digunakan untuk mengidentifikasi pengguna. Cookie adalah file kecil yang disematkan server di komputer pengguna. Setiap kali komputer yang sama meminta halaman dengan browser, itu juga akan mengirimkan cookie. Dengan PHP, Anda dapat membuat dan mengambil nilai cookie
Nama cookie secara otomatis diberikan ke variabel dengan nama yang sama. Misalnya, jika sebuah cookie dikirim dengan nama "user", sebuah variabel secara otomatis dibuat dengan nama $user, yang berisi nilai cookie
Catatan. Fungsi setcookie() harus muncul SEBELUM tag
Catatan. Nilai cookie secara otomatis dikodekan URL saat mengirimkan cookie, dan didekodekan secara otomatis saat diterima (untuk mencegah pengkodean URL, gunakan setrawcookie() sebagai gantinya)
Sintaksis
setcookie(nama, nilai, kedaluwarsa, jalur, domain, aman, hanya http);
Nilai Parameter
ParameterDeskripsinamaDiperlukan. Menentukan nama cookievalueOptional. Menentukan nilai cookieexpireOptional. Menentukan kapan cookie kedaluwarsa. Nilai. time()+86400*30, akan menyetel cookie kedaluwarsa dalam 30 hari. Jika parameter ini dihilangkan atau disetel ke 0, cookie akan kedaluwarsa di akhir sesi (saat browser ditutup). Standarnya adalah 0pathOptional. Menentukan jalur server cookie. Jika disetel ke "/", cookie akan tersedia di seluruh domain. Jika disetel ke "/php/", cookie hanya akan tersedia di dalam direktori php dan semua sub-direktori php. Nilai default adalah direktori saat ini di mana cookie sedang disetel di domainOptional. Menentukan nama domain cookie. Untuk membuat cookie tersedia di semua subdomain misalnya. com, atur domain ke "contoh. com". Atur ke www. contoh. com akan membuat cookie hanya tersedia di www subdomainsecureOptional. Menentukan apakah cookie hanya boleh dikirim melalui koneksi HTTPS yang aman atau tidak. BENAR menunjukkan bahwa cookie hanya akan disetel jika ada koneksi aman. Standarnya adalah FALSEhttponlyOptional. Jika diatur ke TRUE, cookie hanya dapat diakses melalui protokol HTTP (cookie tidak dapat diakses oleh bahasa scripting). Pengaturan ini dapat membantu mengurangi pencurian identitas melalui serangan XSS. Standarnya adalah SALAHDetail Teknis
Nilai Pengembalian. BENAR pada kesuksesan. SALAH pada kegagalan Versi PHP. 4+PHP Changelog. PHP5. 5 - Atribut Max-Age disertakan dalam header Set-Cookie yang dikirim ke klienPHP5. 2 - Parameter httponly telah ditambahkan
Lebih Banyak Contoh
Contoh
Beberapa tanggal kedaluwarsa untuk cookie
$nilai = "Halo dunia. ";
// cookie akan kedaluwarsa saat browser ditutup
setcookie("kueku", $nilai);
// cookie akan kedaluwarsa dalam 1 jam
setcookie("kueku", $nilai, waktu() + 3600);
// cookie akan kedaluwarsa dalam 1 jam, dan hanya akan tersedia
// di dalam direktori php + semua sub-direktori php
setcookie("myCookie", $nilai, waktu() + 3600, "/php/");
?>
beberapa kode
Contoh
Untuk memodifikasi cookie, cukup setel (lagi) cookie menggunakan fungsi setcookie()
$nama_cookie = "pengguna";
$cookie_value = "Alex Porter";
setcookie($nama_cookie, $nilai_cookie, waktu() + (86400 * 30), "/");
?>
jika(. isset($_COOKIE[$cookie_name])) {
gema "Kue bernama '". $nama_kuki. "' tidak diatur. ";
} kalau tidak {
gema "Kue '". $nama_kuki. "' sudah diatur
";
gema "Nilai adalah. ". $_COOKIE[$nama_cookie];
}
?>
Contoh
Untuk menghapus cookie, gunakan fungsi setcookie() dengan tanggal kedaluwarsa di masa lalu
// setel tanggal kedaluwarsa menjadi satu jam yang lalu
setcookie("pengguna", "", waktu() - 3600);
?>
echo "'Pengguna' cookie dihapus. ";
?>
Contoh
Buat skrip kecil yang memeriksa apakah cookie diaktifkan. Pertama, coba buat cookie percobaan dengan fungsi setcookie(), lalu hitung variabel array $_COOKIE