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程序设计有所帮助。

相关文章

PHP中常用数组处理方法实例分析

1.array_shift()将数组的第一个单元移出再返回,这对有时候数组的第一个单元要单独处理很方便。 复制代码 代码如下:<? $tmparray = array("1", "...

php实现简单洗牌算法

如下所示:复制代码 代码如下:<?php  /**   * 简单洗牌算法   */  $card_num=54; //牌数  pr...

解决PHP 7编译安装错误:cannot stat ‘phar.phar’: No such file or directory

解决PHP 7编译安装错误:cannot stat ‘phar.phar’: No such file or directory

前言 最近因为工作需要要使用PHP 7,所以从网上找教程进行安装, 结果编译没问题, 安装的时候报了错误。 错误如下 cp -pR -f phar.phar /usr/local/p...

php自动给网址加上链接的方法

本文实例讲述了php自动给网址加上链接的方法。分享给大家供大家参考。具体实现方法如下: 这里自动匹配页面里的网址,包含http,ftp等,自动给网址加上链接 function tex...

php error_log 函数的使用

我们来大致了解一下error_log()函数。我们看下手册的解释: error_log(PHP 3, PHP 4, PHP 5) bool error_log ( string mess...