Rumah >pembangunan bahagian belakang >masalah PHP >Apakah perbezaan antara cookie dan session dalam php
Perbezaan: 1. Kuki disimpan dalam penyemak imbas, yang agak tidak selamat manakala sesi disimpan dalam pelayan, yang secara relatifnya lebih selamat. 2. Data yang disimpan oleh kuki mempunyai sekatan kuantiti dan saiz, tetapi sesi tidak. 3. Data yang disimpan oleh kuki adalah daripada jenis rentetan, dan data yang disimpan mengikut sesi adalah daripada jenis objek.
Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 7.1, komputer DELL G3
Sama ada anda adalah operasi dan penyelenggaraan sistem atau pembangun PHP Dalam temu bual, saya sering ditanya apakah perbezaan antara Sesi dan Kuki dalam PHP? Mari kita ringkaskannya di bawah:
Kuki hanya dijana, diurus dan digunakan oleh pelanggan PHP hanya mengeluarkan arahan yang meminta pelanggan cara menjana kuki, bila tamat tempoh, dsb., tetapi pelanggan mungkin tidak semestinya mengikut PHP. arahan kerja.
Kuki tidak begitu selamat Penjenayah boleh melakukan penipuan kuki dengan menganalisis kuki tempatan. Memandangkan isu keselamatan, adalah disyorkan untuk menyimpan maklumat pengguna yang penting dalam Sesi dan maklumat tidak penting lain yang perlu disimpan boleh disimpan dalam Kuki.
Sesi ialah sesi dari semasa pengguna memasuki tapak web untuk menutup penyemak imbas Ia disimpan dalam cakera pelayan dalam bentuk fail secara lalai, menetapkan terlalu banyak sesi akan menjejaskan prestasi cakera. Anda juga boleh menggunakan enjin Memori untuk menyimpan Masukkan MySQL Kerana enjin memori membaca dan menulis dengan cepat, anda kini boleh menentukan untuk menggunakan Redis untuk memproses Sesi, yang lebih pantas dan cekap.
Mekanisme pemulihan Sesi adalah pasif Secara umumnya, sebaik sahaja penyemak imbas ditutup, Sesi akan dipulihkan secara automatik oleh PHP Namun, kadangkala walaupun masa tamat tempoh ditetapkan dan penyemak imbas ditutup, Sesi mungkin tidak akan dipadamkan, seperti Apabila menyediakan berbilang direktori dan berbilang peringkat untuk menyimpan Sesi, anda perlu memadamkan Sesi secara manual melalui skrip PHP.
Biasanya kuki dan sesi terikat, iaitu, apabila pengguna tidak melumpuhkan kuki, kuki biasanya akan menyimpan ID sesi dan kitaran hayat sesi Jika pengguna memadam kuki, dia biasanya akan keluar dari sistem ; jika pengguna tidak melumpuhkan kuki, tutup penyemak imbas Sesi itu juga akan menjadi tidak sah serta-merta, dan anda perlu log masuk ke sistem semula.
Kuki dan Sesi biasanya digunakan untuk mengenal pasti pengguna, mengesahkan kebenaran, menyimpan data mudah dan menggunakan Kuki untuk mencapai log masuk tunggal.
Data yang disimpan oleh kuki akan mempunyai sekatan yang berbeza dalam penyemak imbas yang berbeza Secara amnya, di bawah nama domain yang sama, bilangan pembolehubah kuki dikawal dalam 20 dan saiz nilai setiap kuki dikawal dalam 4kb. Tiada had pada saiz atau bilangan nilai Sesi, tetapi jika terlalu banyak, ia akan meningkatkan tekanan pada pelayan. Selain itu, kandungan yang disimpan oleh Cookie ialah rentetan, manakala data yang disimpan oleh Sesi ialah objek.
Sesi tidak boleh membezakan laluan Semasa lawatan pengguna yang sama ke tapak web, semua Sesi boleh diakses di mana-mana dan jika parameter laluan ditetapkan dalam kuki, maka tapak web yang sama di bawah laluan berbeza Kuki tidak boleh diakses antara satu sama lain.
Perbezaan antara COOKIE dan SESI
(1) Lokasi storan: Kuki disimpan dalam penyemak imbas klien, yang agak tidak selamat fail yang mengandungi kandungan Sesi disimpan dalam pelayan , biasanya dalam folder tmp dalam direktori akar, yang agak lebih selamat.
(2) Sekatan kuantiti dan saiz: Data yang disimpan oleh kuki akan mempunyai sekatan yang berbeza dalam penyemak imbas yang berbeza Secara amnya, di bawah nama domain yang sama, bilangan pembolehubah kuki dikawal dalam 20 dan nilai setiap satu kuki ialah Saiz dikawal dalam 4kb. Tiada had pada saiz atau bilangan nilai sesi, tetapi jika terlalu banyak, ia akan meningkatkan tekanan pada pelayan.
(3) Perbezaan kandungan: Kandungan yang disimpan oleh kuki ialah rentetan, manakala data yang disimpan oleh sesi dalam pelayan ialah objek.
(4) Perbezaan laluan: Sesi tidak boleh membezakan laluan Semasa lawatan pengguna yang sama ke tapak web, semua sesi boleh diakses di mana-mana dan jika parameter laluan ditetapkan dalam kuki, maka Kuki yang sama dalam berbeza laluan di tapak web tidak boleh diakses antara satu sama lain.
Pembelajaran yang disyorkan: "Tutorial Video PHP"
Atas ialah kandungan terperinci Apakah perbezaan antara cookie dan session dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!