????怎样删除session文件???? 好像办不到,可以写一个程序,定期运行,删掉所有session或是把session保存目录设在系统temp文件夹 ,系统重启会自动处理 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 楼主,不生成session那还用session干吗? session 是系统(PHP)自己管理 的啊,一般是一个星期以后就会被删掉,你也可在PHP.INI中修改,其实也只是一个随机号等信息而已,不会占多少空间,我觉得没有必要人为管理! 在不用SESSION的情况下可用下面禁止自动生成:ini_set("session.auto_star",0);如果使用SESSION,又不想以文件方式保存,可以考虑使用session_set_save_handler存入数据库:if(!mysql_table_exists("sessions",$DB)){ $query = 'CREATE TABLE sessions ( SessionID char(255) not null, LastUpdated datetime not null, DataValue text, PRIMARY KEY ( SessionID ), INDEX ( LastUpdated ) )'; mysql_query($query);} function sessao_open($aSavaPath, $aSessionName){ global $aTime; sessao_gc( $aTime ); return True;}function sessao_close(){ return True;}function sessao_read( $aKey ){ $query = "SELECT DataValue FROM sessions WHERE SessionID='$aKey'"; $busca = mysql_query($query); if(mysql_num_rows($busca) == 1) { $r = mysql_fetch_array($busca); return $r['DataValue']; } ELSE { $query = "INSERT INTO sessions (SessionID, LastUpdated, DataValue) VALUES ('$aKey', NOW(), '')"; mysql_query($query); return ""; }}function sessao_write( $aKey, $aVal ){ $aVal = addslashes( $aVal ); $query = "UPDATE sessions SET DataValue = '$aVal', LastUpdated = NOW() WHERE SessionID = '$aKey'"; mysql_query($query); return True;}function sessao_destroy( $aKey ){ $query = "DELETE FROM sessions WHERE SessionID = '$aKey'"; mysql_query($query); return True;}function sessao_gc( $aMaxLifeTime ){ $query = "DELETE FROM sessions WHERE UNIX_TIMESTAMP(NOW()) - UNIX_TIMESTAMP(LastUpdated) > $aMaxLifeTime"; mysql_query($query); return True;}session_set_save_handler("sessao_open", "sessao_close", "sessao_read", "sessao_write", "sessao_destroy", "sessao_gc"); php清除session临时文件的默认概率是千分之一如果网站流量大可以把概率调小,流量小的话可以调高具体在php.ini的[session]段session.gc_probability = 1session.gc_divisor = 100这样设置是100次访问会激活一次清除垃圾的进程 php 怎么实现UTF-8转换成GBK php 如何查询系统时间 超挑战性的问题:PHP点击超链,自动生成XML文件? 如何用正则在字符串插入分割符? 困惑我几天的问题啦,win2003 错误事件ID:2268、2214 求助,PHP格式化日期问题,帮帮忙。 关于Thinkphp中SQL语句 要学习,使用php需要在电脑上装什么软件? 诸位帮忙!!高分求救!! TP SQL执行失败 php在linux和win下面运行速度差别大么? 高分求救:在windows2000下PHP如何连接oracle9i
ini_set("session.auto_star",0);如果使用SESSION,又不想以文件方式保存,可以考虑使用session_set_save_handler存入数据库:
if(!mysql_table_exists("sessions",$DB))
{
$query = 'CREATE TABLE sessions
(
SessionID char(255) not null,
LastUpdated datetime not null,
DataValue text,
PRIMARY KEY ( SessionID ),
INDEX ( LastUpdated )
)';
mysql_query($query);
}
function sessao_open($aSavaPath, $aSessionName)
{
global $aTime;
sessao_gc( $aTime );
return True;
}
function sessao_close()
{
return True;
}
function sessao_read( $aKey )
{
$query = "SELECT DataValue FROM sessions WHERE SessionID='$aKey'";
$busca = mysql_query($query);
if(mysql_num_rows($busca) == 1)
{
$r = mysql_fetch_array($busca);
return $r['DataValue'];
} ELSE {
$query = "INSERT INTO sessions (SessionID, LastUpdated, DataValue)
VALUES ('$aKey', NOW(), '')";
mysql_query($query);
return "";
}
}
function sessao_write( $aKey, $aVal )
{
$aVal = addslashes( $aVal );
$query = "UPDATE sessions SET DataValue = '$aVal', LastUpdated = NOW() WHERE SessionID = '$aKey'";
mysql_query($query);
return True;
}
function sessao_destroy( $aKey )
{
$query = "DELETE FROM sessions WHERE SessionID = '$aKey'";
mysql_query($query);
return True;
}
function sessao_gc( $aMaxLifeTime )
{
$query = "DELETE FROM sessions WHERE UNIX_TIMESTAMP(NOW()) - UNIX_TIMESTAMP(LastUpdated) > $aMaxLifeTime";
mysql_query($query);
return True;
}
session_set_save_handler("sessao_open", "sessao_close", "sessao_read", "sessao_write", "sessao_destroy", "sessao_gc");
如果网站流量大可以把概率调小,流量小的话可以调高
具体在php.ini的[session]段
session.gc_probability = 1
session.gc_divisor = 100这样设置是100次访问会激活一次清除垃圾的进程