php 浏览记录功能

时间:2022-02-03 11:49:13
/**
* 历史浏览记录
* $data array 浏览记录里作品的必要信息
*/
private function _history($data){
if(!$data || !is_array($data))
{
return false;
}
//判断cookie类里面是否有浏览记录
if(param::get_cookie('history')){ //获取cookie
$history = unserialize(param::get_cookie('history')); //反序列化得到数据
array_unshift($history, $data); //在浏览记录顶部加入
/* 去除重复记录 */
$rows = array();
foreach ($history as $v){ if(in_array($v, $rows)){
continue;
}
$rows[] = $v;
}
/* 如果记录数量多余5则去除 */
while (count($rows) > 10)
{
array_pop($rows); //弹出
}
param::set_cookie('history',serialize($rows),time()+3600*24*30,'/'); return true; }
else
{
$history = serialize(array($data)); //序列化
param::set_cookie('history',$history,time()+3600*24*30,'/'); //设置cookie
return true;
} }

以上 获取cookie 和设置cookie  的方式根据框架不同,自行更改。