php设置session并存储到数据库中
时间: 2023-02-13 13:08:49 浏览: 55
在 PHP 中使用 session 时,首先需要调用 `session_start` 函数,这个函数会开启 session,并且会在服务器端生成一个 session 文件,用于存储 session 数据。
接下来,可以使用 `$_SESSION` 超全局数组来存储 session 数据。例如:
```
session_start();
$_SESSION['username'] = 'John';
```
上面的代码将会在 session 中存储一个名为 `username` 的变量,值为 `John`。
如果要将 session 数据存储到数据库中,可以在调用 `session_start` 函数之前,调用 `session_set_save_handler` 函数来设置自定义的 session 存储函数,然后在自定义的 session 存储函数中编写代码将 session 数据存储到数据库中。
下面是一个简单的示例,展示了如何使用自定义的 session 存储函数将 session 数据存储到 MySQL 数据库中:
```
<?php
// 连接数据库
$link = mysqli_connect('localhost', 'user', 'password', 'database');
// 设置自定义的 session 存储函数
session_set_save_handler(
'sess_open',
'sess_close',
'sess_read',
'sess_write',
'sess_destroy',
'sess_gc'
);
// 开启 session
session_start();
// 在 session 中存储数据
$_SESSION['username'] = 'John';
// 关闭数据库连接
mysqli_close($link);
// 自定义的 session 存储函数
function sess_open($save_path, $session_name)
{
global $link;
return true;
}
function sess_close()
{
global $link;