博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
简易的PHP session数据库后端(Postgres)
阅读量:6360 次
发布时间:2019-06-23

本文共 1459 字,大约阅读时间需要 4 分钟。

hot3.png

一个开发环境有多个网站,需要使用不同的session,解决方案很多。不过这次也高大上一把,用数据库存,方便以后扩展。

首先是数据库的部分

--drop table php_sessioncreate unlogged table php_session(    sess_id varchar(32) primary key,    modify_time timestamp with time zone not null,    sess_data varchar(3000) default '');create index concurrently idx_php_session_modify_time on php_session(modify_time);--set_session(id, data)create or replace function set_session(varchar, varchar) returns void as $set_session$    with upsert as (        update php_session        set modify_time = current_timestamp, sess_data = $2        where sess_id = $1        returning 1    )    insert into php_session (sess_id, modify_time, sess_data)    select $1, current_timestamp, $2    where not exists (        select 1 from upsert    );$set_session$ language sql;--get_session(id)create or replace function get_session(varchar) returns varchar as $get_session$    select sess_data from php_session where sess_id = $1$get_session$ language sql;--del_sessioncreate or replace function del_session(varchar) returns void as $del_session$    delete from php_session where sess_id = $1$del_session$ language sql;--gc_sessioncreate or replace function gc_session() returns void as $del_session$    delete from php_session where modify_time < current_timestamp - interval '30 days'$del_session$ language sql;

然后是PHP的部分

然后只要在session_start之前调用这个就可以了

至于SESSION_CONN,那是我定义的一个常量,表示一个指向session数据库的链接而已

转载于:https://my.oschina.net/visualgui823/blog/290074

你可能感兴趣的文章
数组成员是函数java_在Laravel 5.6中调用数组上的成员函数links()
查看>>
java生成xml文件名中文乱码_jdom解决中文乱码问题 JAVA生成xml文件 | 学步园
查看>>
php mysql exec_PHP: PDO::exec - Manual
查看>>
java dateutils工具类_日期工具类DateUtils | 学步园
查看>>
centos 部署mysql5.7_centos7部署mysql-5.7
查看>>
java tostring 格式化日期_ASP.NET格式化日期
查看>>
爱卡创誓记java饰品,《创誓记AIKA》芙兰精灵配上框架眼睛折服宅男宅女
查看>>
学php c语言,一个学过C语言的小编学习PHP编程微课是什么样的一种体验?-php是什么文件...
查看>>
PHP网站加功能,如何实现添加分类的功能
查看>>
php 阶乘函数,什么是PHP中的RECURSIVE函数?
查看>>
php 协议头,入门PHP实现MQTT协议的固定头部(Fix header)
查看>>
php留言板上传图片,thinkphp3.2.3留言板带管理没有后台ajax上传图片功能
查看>>
php定时任务管理,Zebra-Crontab
查看>>
java程序本质,方法学之Java的本质
查看>>
ip登陆异常 php,PHP实例:PHP制作登录异常ip检测功能的实例代码
查看>>
java token认证机制,从零开始的SpringBoot项目 ( 七 ) 实现基于Token的用户身份验证...
查看>>
java每轮排序结果,冒泡排序及其优化java
查看>>
matlab2014启动很慢,matlab启动慢的解决方法
查看>>
matlab改变示波器颜色,[转载]matlab/simulink 示波器颜色设置
查看>>
php imagemagick安装,在CentOS上为PHP安装Imagick和ImageMagick
查看>>