Jadual Kandungan
Apakah itu sesi PHP?
Tetapan tamat masa sesi PHP
Cara lain untuk menetapkan tamat masa sesi PHP
Ringkasan
Rumah pembangunan bahagian belakang masalah PHP Bagaimana untuk menetapkan tamat masa sesi dalam php

Bagaimana untuk menetapkan tamat masa sesi dalam php

Apr 12, 2023 pm 05:32 PM

PHP telah menjadi salah satu bahasa standard untuk pembangunan web kerana kemudahan pembelajaran, kemudahan penggunaan dan fungsi yang berkuasa. Walau bagaimanapun, dalam aplikasi web, masalah tamat masa sesi menyusahkan ramai pembangun. Tamat masa sesi bermakna apabila pengguna tidak melakukan sebarang operasi untuk tempoh masa, sesi pelayan akan tamat tempoh secara automatik dan data sesi akan dikosongkan. Dalam sesetengah kes, kami ingin mengawal tamat masa sesi Artikel ini akan memperkenalkan cara untuk menetapkan tamat masa sesi dalam PHP.

Apakah itu sesi PHP?

Sesi PHP ialah mekanisme untuk menyimpan data di bahagian pelayan. Selepas pengguna mewujudkan sambungan dengan pelayan web, pelayan web mencipta ID sesi unik untuk setiap pengguna. Pelayan akan menggunakan ID sesi untuk menyimpan data bagi setiap sesi.

ID sesi akan disimpan dalam kuki pelanggan Setiap kali pengguna berkomunikasi dengan pelayan, penyemak imbas web akan menghantar kuki yang mengandungi ID sesi. Pelayan menggunakan ID sesi untuk mencari sesi yang dikaitkan dengan pengguna dan mengekalkan data sesi ini antara permintaan pengguna dan respons pelayan.

Dalam PHP, kita boleh menggunakan $_SESSION pembolehubah global untuk mengakses data sesi. Contohnya:

session_start();

// Set session variable
$_SESSION['username'] = 'John Doe';

// Get session variable
$loggedInUser = $_SESSION['username'];
Salin selepas log masuk

Kod di atas mencipta atau memulihkan data sesi yang sepadan dengan klien selepas session_start() dipanggil. $_SESSION Boleh digunakan untuk membaca atau mengubah suai data sesi yang disimpan.

Tetapan tamat masa sesi PHP

Secara lalai, data sesi PHP disimpan dalam direktori session.save_path pelayan dan tamat masa sesi lalai ditetapkan dalam fail konfigurasi php.ini ialah 1440 saat (iaitu, 24 minit). Masa ini sesuai untuk kebanyakan pengaturcara dan aplikasi. Walau bagaimanapun, nilai lalai ini mungkin tidak sesuai untuk sesetengah aplikasi atau senario. Sebagai contoh, dalam beberapa kes kami ingin menetapkan tamat masa menjadi lebih pendek kerana pengguna mempunyai lebar jalur terhad atau mempunyai keperluan keselamatan lain.

Kami boleh mengubah suai tamat masa sesi PHP melalui dua parameter berikut:

  • session.gc_maxlifetime - Parameter ini digunakan untuk menetapkan tamat masa sesi.
  • session.gc_probability dan session.gc_divisor - Parameter ini digunakan untuk menetapkan kebarangkalian mekanisme pengumpulan sampah automatik.

Untuk menetapkan tamat masa sesi, anda boleh menambah kod berikut dalam fail php.ini:

session.gc_maxlifetime = 1440
Salin selepas log masuk

Kod di atas menetapkan tamat masa kepada 1440 saat (iaitu 24 minit ). Kami juga boleh menetapkan nilai ini kepada masa yang lebih singkat, seperti 5 minit (iaitu 300 saat).

session.gc_maxlifetime = 300
Salin selepas log masuk

Dengan kod di atas, jika pengguna tiada aktiviti dalam masa 5 minit, pelayan akan mengosongkan data sesi pengguna secara automatik.

Perlu diambil perhatian bahawa nilai session.gc_maxlifetime hendaklah kurang daripada tamat masa pelayan web, jika tidak, data sesi mungkin dikosongkan semasa pengguna masih menggunakannya.

Cara lain untuk menetapkan tamat masa sesi PHP

Selain menetapkannya dalam fail konfigurasi php.ini, kami juga boleh menetapkan tamat masa sesi dalam aplikasi menggunakan kod berikut:

// Set session timeout to 5 minutes
ini_set('session.gc_maxlifetime', 300);

// Start session
session_start();
Salin selepas log masuk

Dalam kod di atas, gunakan fungsi ini_set() untuk mengubah suai session.gc_maxlifetime kepada 300 saat (iaitu 5 minit). Kita perlu memanggil session_start() sebelum memanggil fungsi ini_set().

Cara lain untuk menetapkan tamat masa sesi ialah menukar tamat masa lalai melalui fail .htaccess. Kita boleh menambah kod berikut pada fail:

php_value session.gc_maxlifetime 300
Salin selepas log masuk

Kod di atas menetapkan tamat masa sesi kepada 5 minit (iaitu 300 saat).

Ringkasan

Dalam artikel ini, kami mempelajari konsep asas tamat masa sesi PHP dan memperkenalkan cara untuk menetapkan tamat masa sesi dalam PHP. Kita boleh mengawal tamat masa sesi dengan mengubah suai fail php.ini, menggunakan fungsi ini_set() atau menambah konfigurasi dalam fail .htaccess.

Dalam pembangunan sebenar, kita perlu memilih tamat masa sesi yang sesuai berdasarkan senario aplikasi dan keperluan sebenar.

Atas ialah kandungan terperinci Bagaimana untuk menetapkan tamat masa sesi dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

PHP 8 JIT (Just-in-Time) Penyusunan: Bagaimana ia meningkatkan prestasi. PHP 8 JIT (Just-in-Time) Penyusunan: Bagaimana ia meningkatkan prestasi. Mar 25, 2025 am 10:37 AM

Kompilasi JIT Php 8 meningkatkan prestasi dengan menyusun kod yang sering dilaksanakan ke dalam kod mesin, memberi manfaat kepada aplikasi dengan pengiraan berat dan mengurangkan masa pelaksanaan.

OWASP Top 10 PHP: Huraikan dan mengurangkan kelemahan umum. OWASP Top 10 PHP: Huraikan dan mengurangkan kelemahan umum. Mar 26, 2025 pm 04:13 PM

Artikel ini membincangkan kelemahan OWASP 10 dalam strategi PHP dan mitigasi. Isu -isu utama termasuk suntikan, pengesahan yang rosak, dan XSS, dengan alat yang disyorkan untuk memantau dan mendapatkan aplikasi PHP.

PHP Secure File Muat naik: Mencegah kelemahan berkaitan fail. PHP Secure File Muat naik: Mencegah kelemahan berkaitan fail. Mar 26, 2025 pm 04:18 PM

Artikel ini membincangkan mendapatkan muat naik fail PHP untuk mengelakkan kelemahan seperti suntikan kod. Ia memberi tumpuan kepada pengesahan jenis fail, penyimpanan selamat, dan pengendalian ralat untuk meningkatkan keselamatan aplikasi.

Pengesahan PHP & amp; Kebenaran: Pelaksanaan selamat. Pengesahan PHP & amp; Kebenaran: Pelaksanaan selamat. Mar 25, 2025 pm 03:06 PM

Artikel ini membincangkan pelaksanaan pengesahan dan kebenaran yang mantap dalam PHP untuk mencegah akses yang tidak dibenarkan, memperincikan amalan terbaik dan mengesyorkan alat peningkatan keselamatan.

Penyulitan PHP: Penyulitan simetri vs asimetrik. Penyulitan PHP: Penyulitan simetri vs asimetrik. Mar 25, 2025 pm 03:12 PM

Artikel ini membincangkan penyulitan simetri dan asimetrik dalam PHP, membandingkan kesesuaian, prestasi, dan perbezaan keselamatan mereka. Penyulitan simetri lebih cepat dan sesuai untuk data pukal, manakala asimetrik digunakan untuk pertukaran utama yang selamat.

Bagaimana anda mengambil data dari pangkalan data menggunakan PHP? Bagaimana anda mengambil data dari pangkalan data menggunakan PHP? Mar 20, 2025 pm 04:57 PM

Artikel membincangkan mendapatkan data dari pangkalan data menggunakan PHP, meliputi langkah, langkah keselamatan, teknik pengoptimuman, dan kesilapan umum dengan penyelesaian.

PHP CSRF Perlindungan: Bagaimana untuk mencegah serangan CSRF. PHP CSRF Perlindungan: Bagaimana untuk mencegah serangan CSRF. Mar 25, 2025 pm 03:05 PM

Artikel ini membincangkan strategi untuk mencegah serangan CSRF di PHP, termasuk menggunakan token CSRF, kuki tapak yang sama, dan pengurusan sesi yang betul.

Apakah tujuan mysqli_query () dan mysqli_fetch_assoc ()? Apakah tujuan mysqli_query () dan mysqli_fetch_assoc ()? Mar 20, 2025 pm 04:55 PM

Artikel ini membincangkan fungsi mysqli_query () dan mysqli_fetch_assoc () dalam PHP untuk interaksi pangkalan data MySQL. Ia menerangkan peranan, perbezaan, dan memberikan contoh praktikal penggunaannya. Hujah utama memberi tumpuan kepada manfaat usin

See all articles