penggunaan kuki

Buat Kuki

Buat kuki dalam PHP melalui fungsi setcookie(). Format sintaks adalah seperti berikut:

bool setcookie(nama rentetan[,nilai rentetan[,int luput[, laluan rentetan[,domain rentetan[,int selamat]]]]])

Baca Kuki

Dalam PHP, anda boleh membaca nilai kuki di sebelah penyemak imbas terus melalui tatasusunan super global $_COOKIE[].

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=gb2312"
  />
 <title>PHP语言基础</title>
 
</head>
<body>
<?php
date_default_timezone_set("PRC");
header("Content-Type:text/html; charset=gb2312");
if (!isset($_COOKIE["visittime"])) {
 setcookie("visittime", date("y-m-d H:i:s"));
 echo "这是第一次保存Cookie"."<br>";
} else {
 setcookie("visittime", date("y-m-d H:i:s"),   time() + 60);
 echo "上次访问时间为:" . $_COOKIE["visittime"];
 echo "<br>";
}
echo "本次访问时间:" . date("y-m-d H:i:s");
?>
</body>
</html>


Keputusan larian pertama:
Ini adalah kali pertama menyimpan kuki
Masa lawatan ini: 16-07- 16 08:26:25

Keputusan larian kedua:
Masa lawatan terakhir: 16-07-16 08:26:25
Masa lawatan kali ini: 16-07-16 08:27: 25

Kod di atas mula-mula mengesan sama ada fail Kuki wujud melalui fungsi isset() Jika ia tidak wujud, buat fail Kuki melalui fungsi setcookie() Jika ia wujud, tetapkan masa tamat tempoh kuki kepada 60 saat.

Padam Kuki

Apabila kuki dibuat, jika masa tamat tempohnya tidak ditetapkan, fail kuki akan dipadamkan secara automatik apabila penyemak imbas ditutup. Jika anda ingin memadamkan fail Cookie sebelum menutup penyemak imbas, terdapat dua kaedah: satu ialah memadamkannya menggunakan fungsi setcookie() dan satu lagi ialah memadam secara manual Cookie dalam penyemak imbas. Mereka diperkenalkan secara berasingan di bawah.

1. Gunakan fungsi setcookie() untuk memadam kuki

Memadam kuki pada asasnya serupa dengan membuat kuki Fungsi setcookie() juga digunakan untuk memadam kuki. Untuk memadamkan kuki, anda hanya perlu menetapkan parameter kedua dalam fungsi setcookie() kepada nilai nol, dan tetapkan masa tamat tempoh Kuki parameter ketiga menjadi kurang daripada masa semasa sistem.

Sebagai contoh, untuk menetapkan masa tamat tempoh kuki kepada masa semasa tolak 1 saat, kodnya adalah seperti berikut:

setcookie("name", "", time()-1) ;

Dalam kod di atas, fungsi time() mengembalikan cap masa semasa yang dinyatakan dalam saat Menolak 1 saat daripada masa tamat tempoh akan mendapat masa lalu, dengan itu memadamkan kuki.

2. Padamkan kuki secara manual dalam penyemak imbas

Apabila menggunakan kuki, kuki secara automatik menjana fail teks dan menyimpannya dalam folder sementara Kuki pelayar IE. Memadam fail kuki dalam penyemak imbas anda ialah kaedah yang sangat mudah.

Kitaran hayat kuki

Jika kuki tidak menetapkan masa, ini bermakna kitaran hayatnya adalah semasa sesi penyemak imbas Selagi anda menutup pelayar IE, kuki akan hilang secara automatik . Kuki jenis ini dipanggil kuki sesi dan biasanya tidak disimpan pada cakera keras tetapi dalam ingatan.

Jika masa tamat tempoh ditetapkan, penyemak imbas akan menyimpan kuki ke cakera keras, dan ia masih sah apabila anda membuka pelayar IE sekali lagi sehingga tempoh sahnya tamat.

Walaupun kuki boleh disimpan dalam penyemak imbas pelanggan untuk masa yang lama, kuki itu tidak statik. Kerana penyemak imbas dibenarkan untuk menyimpan sehingga 300 fail kuki, dan setiap fail kuki menyokong kapasiti maksimum 4KB setiap nama domain menyokong maksimum 20 kuki Jika had dicapai, pelayar akan memadam kuki secara rawak.

Apakah yang perlu saya lakukan jika penyemak imbas saya tidak menyokong kuki?

Jika aplikasi anda melibatkan penyemak imbas yang tidak menyokong kuki, anda perlu menggunakan kaedah lain untuk menghantar maklumat dari satu halaman ke halaman lain dalam aplikasi anda. Satu cara ialah menghantar data daripada borang (kami telah merangkumi borang dan input pengguna lebih awal dalam tutorial ini).

Borang berikut menyerahkan input pengguna kepada "welcome.php" apabila pengguna mengklik butang serah:

<html>
<body>
 
<form action="welcome.php" method="post">
Name: <input type="text" name="name" />
Age: <input type="text" name="age" />
<input type="submit" />
</form>
 
</body>
</html>

Dapatkan kembali nilai dalam "welcome.php" seperti ini:

<html>
<body>
 
Welcome <?php echo $_POST["name"]; ?>.<br />
You are <?php echo $_POST["age"]; ?> years old.
 
</body>
</html>


Meneruskan pembelajaran
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>PHP语言基础</title> </head> <body> <?php date_default_timezone_set("PRC"); header("Content-Type:text/html; charset=gb2312"); if (!isset($_COOKIE["visittime"])) { setcookie("visittime", date("y-m-d H:i:s")); echo "这是第一次保存Cookie"."<br>"; } else { setcookie("visittime", date("y-m-d H:i:s"), time() + 60); echo "上次访问时间为:" . $_COOKIE["visittime"]; echo "<br>"; } echo "本次访问时间:" . date("y-m-d H:i:s"); ?> </body> </html>
  • Cadangan kursus
  • Muat turun perisian kursus