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_idSesi 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.