php 浏览历史记录的实现方法

前端之家收集整理的这篇文章主要介绍了php 浏览历史记录的实现方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编来看看吧。
经测试代码如下:

/**
 * 商品历史浏览记录
 * $data 商品记录信息
 *
 * @param 
 * @author 编程之家 jb51.cc jb51.cc
 **/
private function _history($data)
{
 if(!$data || !is_array($data))
 {
  return false;
 }
 
 //判断cookie类里面是否有浏览记录
    if($this->_request->getCookie('history'))
    {
  $history = unserialize($this->_request->getCookie('history'));
  array_unshift($history,$data); //在浏览记录顶部加入
  /* 去除重复记录 */
  $rows = array();
  foreach ($history as $v)
  {
   if(in_array($v,$rows))
   {
    continue;
   }
   $rows[] = $v;
  }
  /* 如果记录数量多余5则去除 */
        while (count($rows) > 5)
     {
         array_pop($rows); //弹出
     }
     setcookie('history',serialize($rows),time() + 3600 * 24 * 30,'/');
    }
    else
    {
     $history = serialize(array($data));
     setcookie('history',$history,'/');
    }
}

猜你在找的PHP相关文章