php浏览历史记录的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php浏览历史记录的方法。分享给大家供大家参考。具体实现方法如下:

/**
 * 商品历史浏览记录
 * $data 商品记录信息
 */
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,time()+3600*24*30,'/');
  }
}

希望本文所述对大家的php程序设计有所帮助。

相关文章

中国站长站 For Dede4.0 采集规则

转载请注明出自落伍im286.com,本贴地址:http://www.im286.com/viewthread.php?tid=1991813 只差两分就落伍了,特献出中国站长站&nbs...

php微信开发之自定义菜单完整流程

php微信开发之自定义菜单完整流程

一、自定义菜单概述 自定义菜单能够帮助公众号丰富界面,让用户更好更快地理解公众号的功能。开启自定义菜单后,公众号界面如图所示: 二、申请自定义菜单 个人订阅号使用微博认证、企业订阅号通...

PHP设计模式 注册表模式(多个类的注册)

以前我也写过一个注册表类,不过那一个不能进行多个类的注册,下面用数组对类进行了存储。 复制代码 代码如下: <?php //基础类 class webSite {//一个非常简单的...

PHP中require和include路径问题详解

1 绝对路径、相对路径和未确定路径 相对路径 相对路径指以.开头的路径,例如 复制代码 代码如下: ./a/a.php (相对当前目录)    ../c...

php 生成短网址原理及代码

php 生成短网址 原理: 1.将原网址做crc32校验,得到校验码。 2.使用sprintf('%u') 将校验码转为无符号数字。 3.对无符号数字进行求余62操作(大小写字母+数字等...