Sesi PHP

Sesi PHP

Pembolehubah sesi PHP digunakan untuk menyimpan maklumat tentang sesi pengguna (sesi) atau menukar tetapan sesi pengguna (sesi). Pembolehubah sesi menyimpan maklumat untuk pengguna tunggal dan tersedia untuk semua halaman dalam aplikasi.

Pembolehubah Sesi PHP

Apabila anda mengusahakan aplikasi pada komputer anda, anda membukanya, membuat perubahan dan kemudian menutupnya. Ia banyak seperti perbualan. Komputer tahu siapa anda. Ia tahu apabila anda membuka dan menutup apl. Walau bagaimanapun, di Internet masalah timbul: kerana alamat HTTP tidak dapat mengekalkan keadaan, pelayan web tidak tahu siapa anda dan apa yang anda lakukan.

Sesi PHP menyelesaikan masalah ini dengan menyimpan maklumat pengguna pada pelayan untuk kegunaan seterusnya (seperti nama pengguna, item yang dibeli, dsb.). Walau bagaimanapun, maklumat sesi adalah sementara dan akan dipadamkan selepas pengguna meninggalkan tapak. Jika anda perlu menyimpan maklumat secara kekal, anda boleh menyimpan data dalam pangkalan data.

Sesi berfungsi dengan mencipta id unik (UID) untuk setiap pelawat dan menyimpan pembolehubah berdasarkan UID ini. UID disimpan dalam kuki atau melalui URL.

Memulakan Sesi PHP

Sebelum anda boleh menyimpan maklumat pengguna dalam sesi PHP, anda mesti memulakan sesi terlebih dahulu.

Nota: Fungsi session_start() mesti diletakkan sebelum teg <html>:

<?php session_start(); ?>
<html>
<body>
</body>
</html>

Kod di atas akan mendaftarkan sesi pengguna dengan pelayan supaya anda boleh mula menyimpan maklumat pengguna , dan juga akan Sesi pengguna diberikan UID.

Konfigurasi dan aplikasi sesi

session_start(); //Konfigurasikan

gema $_SESSION[name]; /Use session isset($_SESSION[name]); // Judge unset($_SESSION[name]); // Delete

session_destroy(); // Gunakan semua sesi

Storage Session pembolehubah

Cara yang betul untuk menyimpan dan mendapatkan semula pembolehubah sesi ialah menggunakan pembolehubah PHP $_SESSION:

<?php
session_start();
// 存储 session 数据
$_SESSION['views']=1;
?>
<html>
<head>
<meta charset="utf-8">
<title> php中文网(php.cn)</title>
</head>
<body>
<?php
// 检索 session 数据
echo "浏览量:". $_SESSION['views'];
?>
</body>
</html>

Output:

Paparan: 1

Dalam contoh di bawah, kami mencipta kaunter paparan halaman yang mudah. Fungsi isset() mengesan sama ada pembolehubah "views" telah ditetapkan. Jika pembolehubah "pandangan" telah ditetapkan, kami menambah pembilang. Jika "pandangan" tidak wujud, buat pembolehubah "pandangan" dan tetapkannya kepada 1:

<?php
session_start();
if(isset($_SESSION['views']))
{
         $_SESSION['views']=$_SESSION['views']+1;
}
else
{
         $_SESSION['views']=1;
}
echo "浏览量:". $_SESSION['views'];
?>

Hancurkan Sesi

Jika anda ingin memadamkan Untuk beberapa data sesi, anda boleh menggunakan fungsi unset() atau session_destroy(). Fungsi
unset() digunakan untuk melepaskan pembolehubah sesi yang ditentukan:

<?php
session_start();
if(isset($_SESSION['views']))
{
         unset($_SESSION['views']);
}
?>

Anda juga boleh memusnahkan sepenuhnya sesi dengan memanggil fungsi session_destroy():

<?php
session_destroy();
?>

Nota : session_destroy() Sesi akan ditetapkan semula dan anda akan kehilangan semua data sesi yang disimpan.

session_id

Sesi digunakan untuk menjejaki setiap sesi pengguna dan dikenal pasti menggunakan SessionID yang dijana oleh pelayan untuk membezakan pengguna. Session disimpan dalam

memori pelayan dan SessionID disimpan dalam memori pelayan dan Kuki klien. Dengan cara ini, apabila pengguna membuat permintaan, pelayan

membandingkan SessionID yang direkodkan dalam kuki pengguna dengan SessionID dalam memori pelayan untuk mencari Sesi

yang sepadan dengan pengguna dan melakukan operasi itu. Oleh itu, jika pelanggan melumpuhkan kuki, Sesi tidak boleh menggunakan

untuk menetapkan dan membaca Sesi

Sama seperti kuki, tatasusunan bersekutu boleh dikendalikan di bahagian pelayan $_SESSION untuk membaca data dalam Sesi

Apa yang lebih mudah daripada Cookie ialah kami boleh mengendalikan tatasusunan $_SESSION secara langsung untuk menambah dan memadam elemen tatasusunan untuk mencapai semua operasi Sesi

php .ini configure session

session.save_path = '/leapsoulcn';

Nilai lalai ialah /tmp, yang bermaksud fail sesi disimpan dalam c:/ direktori tmp.


Meneruskan pembelajaran
||
<?php session_start(); // 存储 session 数据 $_SESSION['views']=1; ?> <html> <head> <meta charset="utf-8"> <title> php中文网(php.cn)</title> </head> <body> <?php // 检索 session 数据 echo "浏览量:". $_SESSION['views']; ?> </body> </html>
  • Cadangan kursus
  • Muat turun perisian kursus