Menggunakan kuki ialah pendekatan biasa semasa menulis program PHP. Kuki ialah mekanisme untuk menyimpan data pada bahagian klien, yang membolehkan aplikasi web mengekalkan keadaan merentas berbilang halaman atau sesi penyemak imbas. Menetapkan masa kesahihan kuki dan berkuat kuasa dalam masa nyata merupakan faktor utama apabila menggunakan kuki, kerana jika masa kesahihan ditetapkan secara tidak betul, ia boleh menyebabkan masalah pengesahan, kerosakan data, dsb.
Dalam PHP, anda boleh menggunakan fungsi setcookie() untuk menetapkan kuki. Fungsi ini mengandungi berbilang parameter, parameter pertama ialah nama kuki, parameter kedua ialah nilai kuki, dan parameter ketiga ialah masa tamat tempoh kuki. Masa tamat tempoh ialah parameter pilihan Jika masa tamat tempoh tidak ditetapkan, kuki hanya sah semasa sesi penyemak imbas. Jika anda ingin menetapkan masa tamat tempoh kuki, anda biasanya menggunakan fungsi time() untuk menukar masa kepada cap waktu Unix. Berikut ialah contoh asas:
setcookie('username', 'John', time()+3600);
Kod di atas akan mencipta kuki bernama "nama pengguna" pada bahagian klien, yang tamat tempoh selepas satu jam. Walau bagaimanapun, tempoh sah kuki ini tidak berkuat kuasa serta-merta. Selepas menetapkan kuki, pelanggan mesti memuat semula halaman atau memuat semula halaman untuk masa sah baharu berkuat kuasa.
Untuk menjadikan masa sah kuki berkesan serta-merta, anda boleh menggunakan fungsi ob_flush() dan flush(). Kedua-dua fungsi ini digunakan untuk mengosongkan penimbal dan menghantar output kepada klien. Berikut ialah contoh penggunaan fungsi ob_flush() dan flush():
setcookie('username', 'John', time()+3600); ob_flush(); flush();
Fungsi print() dan echo() juga boleh digunakan untuk mengosongkan penimbal dan menghantar output kepada klien . Walau bagaimanapun, menggunakan fungsi print() dan echo() adalah kurang cekap kerana ia tidak menghantar semua data terus kepada klien, sebaliknya menghantarnya dalam ketulan kecil. Ini meningkatkan beban pada pelayan, menyebabkan masa tindak balas yang lebih perlahan.
Dalam PHP, anda boleh menggunakan fungsi session_start() untuk memulakan sesi. Sesi ialah struktur data yang disimpan pada pelayan yang mengekalkan keadaan merentas berbilang halaman atau sesi penyemak imbas. Tidak seperti kuki, data sesi disimpan pada pelayan, bukan klien. Oleh itu, apabila menetapkan masa kesahan pembolehubah sesi, anda boleh menggunakan fungsi ini_set() untuk mengubah suai tamat masa sesi supaya tetapan itu berkuat kuasa serta-merta. Berikut ialah contoh:
session_start(); $_SESSION['username'] = 'John'; ini_set('session.gc_maxlifetime', 3600);
Kod di atas akan mencipta pembolehubah sesi yang dipanggil "nama pengguna" dan menetapkan nilainya kepada "John". Kemudian, gunakan fungsi ini_set() untuk menetapkan tamat masa sesi kepada satu jam. Tetapan berkuat kuasa serta-merta tanpa perlu memuat semula atau memuat semula halaman.
Ringkasnya, menetapkan masa sah kuki dan berkuat kuasa dalam masa nyata merupakan faktor penting apabila menggunakan kuki. Dalam PHP, anda boleh menggunakan fungsi setcookie() untuk menetapkan masa kesahihan kuki dan menggunakan fungsi ob_flush() dan flush() untuk menjadikan tetapan itu berkesan serta-merta. Selain itu, anda boleh menggunakan fungsi session_start() untuk memulakan sesi Apabila menetapkan masa kesahihan pembolehubah sesi, gunakan fungsi ini_set() untuk menjadikan tetapan itu berkuat kuasa serta-merta. Teknologi ini membantu meningkatkan prestasi dan kebolehpercayaan aplikasi web.
Atas ialah kandungan terperinci Bagaimana untuk menetapkan masa kesahan kuki dalam PHP untuk berkuat kuasa serta-merta. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!