Rumah  >  Artikel  >  rangka kerja php  >  Menggunakan ThinkPHP6 untuk melaksanakan kawalan Kuki

Menggunakan ThinkPHP6 untuk melaksanakan kawalan Kuki

WBOY
WBOYasal
2023-06-21 10:32:422009semak imbas

Dengan populariti berterusan aplikasi web, penggunaan kuki menjadi semakin penting. Kuki ialah teknologi yang menyimpan data pada bahagian pelanggan Ia boleh menyimpan beberapa maklumat, seperti status log masuk pengguna, maklumat troli beli-belah, dsb.

Dalam artikel ini, kami akan memperkenalkan cara menggunakan ThinkPHP6 untuk melaksanakan kawalan kuki untuk mengurus status log masuk pengguna.

1. Apakah itu Kuki?

Protokol HTTP ialah protokol tanpa kewarganegaraan, dan setiap permintaan serta respons tidak mengganggu satu sama lain. Untuk membolehkan pelayan melaksanakan pengurusan keadaan, teknologi Kuki telah wujud.

Kuki ialah fail kecil yang disimpan pada bahagian klien dan disimpan pada penyemak imbas pengguna. Kami boleh menetapkan maklumat berkaitan yang dihantar oleh pelayan kepada penyemak imbas dan membiarkan penyemak imbas menyimpannya secara setempat Maklumat ini boleh menjadi ID pengguna, nama pengguna, item troli beli-belah, dsb.

Struktur asas Kuki adalah seperti berikut:

name=value; expires=date; path=path_value; domain=domain_value; secure

Antaranya, nama mewakili nama Kuki, nilai mewakili nilai Kuki, tamat tempoh mewakili masa tamat Kuki, laluan mewakili laluan berkesan Kuki, dan domain mewakili Kuki Nama domain yang sah, selamat mewakili bendera keselamatan kuki.

2. Menetapkan Kuki dalam ThinkPHP6

Dalam ThinkPHP6, kami boleh mengurus maklumat kuki melalui kelas Kuki. Berikut ialah contoh asas menggunakan kelas Kuki:

use thinkacadeCookie;

// 设置cookie
Cookie::set('name', 'value', 3600);

// 获取cookie
$value = Cookie::get('name');

// 删除cookie
Cookie::delete('name');

Dalam contoh di atas, kita boleh menggunakan kaedah set( ) untuk menetapkan nilai kuki dan masa tamat tempoh, gunakan kaedah get( ) untuk mendapatkan nilai kuki dan gunakan delete( )Kaedah untuk memadam kuki. Antaranya, masa luput adalah dalam beberapa saat.

Jika kita perlu menetapkan laluan dan nama domain kuki, kita boleh menggunakan kaedah option( ) untuk menghantar parameter yang berkaitan, seperti yang ditunjukkan di bawah:

use thinkacadeCookie;

// 设置cookie路径和域名
Cookie::set('name', 'value', ['expire' => 3600, 'path' => '/', 'domain' => 'yourdomain.com']);

3 melaksanakan pengurusan status log masuk pengguna

Dalam aplikasi web, kuki sering digunakan untuk mengurus status log masuk pengguna. Berikut ialah contoh asas menggunakan ThinkPHP6 untuk melaksanakan pengurusan status log masuk pengguna:

use thinkacadeCookie;
use appmodelUser;

// 用户登录
public function login()
{
    // 验证用户

    // 登录成功,设置Cookie
    $user = User::where('username', input('post.username'))->find();
    Cookie::set('login_id', $user->id, 3600);

    // 跳转至首页
    return redirect('/');
}

// 首页
public function index()
{
    // 验证登录

    // 获取登录用户信息
    $user = User::where('id', Cookie::get('login_id'))->find();

    // 输出用户信息
    return 'Welcome back, ' . $user->username . '!';
}

// 用户退出
public function logout()
{
    // 删除Cookie
    Cookie::delete('login_id');

    // 跳转至登录页面
    return redirect('/login');
}

Dalam contoh di atas, kami menggunakan kuki untuk menyimpan maklumat pengguna yang dilog masuk. Apabila log masuk berjaya, kami menetapkan kuki login_id dan menyimpan ID pengguna dalam kuki. Apabila melawat halaman utama, kami membaca login_id yang disimpan dalam kuki dan menggunakan ID untuk mendapatkan maklumat pengguna.

Jika pengguna log keluar, kami menggunakan kaedah delete( ) untuk memadam login_id yang disimpan dalam kuki.

4. Ringkasan

Artikel ini memperkenalkan cara menggunakan ThinkPHP6 untuk melaksanakan kawalan kuki untuk mengurus status log masuk pengguna. Kami menggunakan kategori Kuki untuk menetapkan, mendapatkan dan memadam maklumat Kuki, dan menggunakan Kuki untuk menyimpan maklumat pengguna yang dilog masuk.

Menggunakan teknologi Kuki boleh menyimpan beberapa maklumat dengan mudah dan mengurus status antara pelbagai halaman. Walau bagaimanapun, kita juga perlu memberi perhatian kepada keselamatan kuki untuk mengelakkan kelemahan keselamatan.

Atas ialah kandungan terperinci Menggunakan ThinkPHP6 untuk melaksanakan kawalan Kuki. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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