php session操作类(附实例)
发布时间:2016-11-21 编辑:jiaochengji.com
分享一个php session操作类,及具体的调用示例,有需要的朋友参考下。
一个不错的php session类,将session保存在数据库中,供大家参考。
1,php session类
<?php /* * session类 * by www.jbxue.com */ class Session { //构造函数 public function __construct(){ session_set_save_handler(array(&$this, 'open'),array(&$this, 'close'),array(&$this, 'read'),array(&$this, 'write'), array(&$this, 'destroy'),array(&$this, 'clean')); session_start(); } //打开数据库连接 public function open() { $this->mysql = mysql_connect('localhost', 'root', 'mysql'); $bSeldb = mysql_select_db('sudhir', $this->mysql); if (!$bSeldb) { die ('Can\'t use Database : ' . mysql_error()); } } //写session public function write($id, $data) { $access = time(); $id = mysql_real_escape_string($id); $access = mysql_real_escape_string($access); $data = mysql_real_escape_string($data); $sql = "REPLACE INTO sessions VALUES ('$id', '$access', '$data')"; return mysql_query($sql, $this->mysql) or die(mysql_error()); } //读session public function read($id) { $id = mysql_real_escape_string($id); $sql = "SELECT data FROM sessions WHERE id = '$id'"; if ($result = mysql_query($sql, $this->mysql)) { if (mysql_num_rows($result)) { $record = mysql_fetch_assoc($result); return $record['data']; } } return ''; } //销毁session public function destroy($id) { $id = mysql_real_escape_string($id); $sql = "DELETE FROM sessions WHERE id = '$id'"; return mysql_query($sql, $this->mysql); } //清除session public function clean($max) { $old = time() - $max; $old = mysql_real_escape_string($old); $sql = "DELETE FROM sessions WHERE access < '$old'"; return mysql_query($sql, $this->mysql); } //关闭数据库连接 public function close() { mysql_close($this->mysql); } } ?>
2,调用示例:
<?php //调用session类 require_once "session.php"; $oSession = new Session(); print_r($_SESSION); // First $_SESSION['hi'] = "脚本学堂"; // Comment this Once sessoin is set $_SESSION['test'] = "www.jbxue.com"; // Comment this Once sessoin is set ?>
您可能感兴趣的文章:
php session操作类(附实例)
Go基础学习记录之如何在Golang中使用Session
laravel框架session使用教程
php对象的序列化与反序列化 PHP对象存储与传输
解决php session跨页面传递 session值丢失的问题(图文)
php 购物车的实现代码一例(session方式)
PHP的Session过期问题深入分析
PHP session并发及session读写锁分析
php session 使用与安全
php操作多个用户、多个线程的session(登陆状态session值自动更新)
上一篇:php 图片处理类(附实例)
下一篇:php多键值cookie操作的例子
[关闭]