thinkphp浏览历史功能实现方法


Posted in PHP onOctober 29, 2014

本文实例讲述了thinkphp浏览历史功能实现方法,分享给大家供大家参考。具体实现方法分析如下:

历史浏览功能都是使用了cookie功能记录用户信息放到了本地了,这样我们只要读取存储在cookies中的值就可以了,下面来给大家介绍一个基于thinkphp 实现浏览历史功能例子。

就像浏览器一样,能够记录访问了哪些页面,这样能够减少时间,下面我们实现浏览历史的功能。

1.在你需要记录浏览数据的产品或新闻页面,记录cookie需要保存的信息,例如下面这行代码,把页面ID,产品名称,价格,缩略图,网址传给cookie_history。

cookie_history($id,$info['title'],$info['price'],$info['pic'],$thisurl);

2.function.php 里面添加代码
/**

  +----------------------------------------------------------

 * 浏览记录按照时间排序

  +----------------------------------------------------------

 */

function my_sort($a, $b){

$a = substr($a,1);

$b = substr($b,1);

if ($a == $b) return 0;

return ($a > $b) ? -1 : 1;

  }

/**

  +----------------------------------------------------------

 * 网页浏览记录生成

  +----------------------------------------------------------

 */

function cookie_history($id,$title,$price,$img,$url){

$dealinfo['title'] = $title;

$dealinfo['price'] = $price;

$dealinfo['img'] = $img;

$dealinfo['url'] = $url;

$time = 't'.NOW_TIME;

$cookie_history = array($time => json_encode($dealinfo));  //设置cookie

if (!cookie('history')){//cookie空,初始一个

cookie('history',$cookie_history);

}else{

$new_history = array_merge(cookie('history'),$cookie_history);//添加新浏览数据

uksort($new_history, "my_sort");//按照浏览时间排序

$history = array_unique($new_history);

if (count($history) > 4){

$history = array_slice($history,0,4);

}

cookie('history',$history);

}

}

/**

  +----------------------------------------------------------

 * 网页浏览记录读取

  +----------------------------------------------------------

 */

function cookie_history_read(){

$arr = cookie('history');

foreach ((array)$arr as $k => $v){

$list[$k] = json_decode($v,true);

}

return $list;

}

3.在需要显示浏览记录的页面输出信息
$this->assign('history',cookie_history_read());

模板里面用volist显示出来就行了。

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

PHP 相关文章推荐
smarty静态实验表明,网络上是错的~呵呵
Nov 25 PHP
在PHP里得到前天和昨天的日期的代码
Aug 16 PHP
坏狼php学习 计数器实例代码
Jun 15 PHP
php zlib压缩和解压缩swf文件的代码
Dec 30 PHP
让php处理图片变得简单 基于gb库的图片处理类附实例代码下载
May 17 PHP
深入PHP中的HashTable结构详解
Jun 13 PHP
PHP_SELF,SCRIPT_NAME,REQUEST_URI区别
Dec 24 PHP
PHP 实现类似js中alert() 提示框
Mar 18 PHP
php将远程图片保存到本地服务器的实现代码
Aug 03 PHP
php实现常见图片格式的水印和缩略图制作(面向对象)
Jun 15 PHP
PHP Socket网络操作类定义与用法示例
Aug 30 PHP
零基础php编程好学吗
Oct 11 PHP
thinkphp获取栏目和文章当前位置的方法
Oct 29 #PHP
thinkphp实现like模糊查询实例
Oct 29 #PHP
ThinkPHP结合AjaxFileUploader实现无刷新文件上传的方法
Oct 29 #PHP
PHP多个文件上传到服务器实例
Oct 29 #PHP
php跨站攻击实例分析
Oct 28 #PHP
php获取根域名方法汇总
Oct 28 #PHP
3款值得推荐的微信开发开源框架
Oct 28 #PHP
You might like
php扩展ZF――Validate扩展
2008/01/10 PHP
PHP 多维数组的排序问题 根据二维数组中某个项排序
2011/11/09 PHP
PHP中的按位与和按位或操作示例
2014/01/27 PHP
将CMYK颜色值和RGB颜色相互转换的PHP代码
2014/07/28 PHP
PHP伪造来源HTTP_REFERER的方法实例详解
2015/07/06 PHP
thinkPHP模型初始化实例分析
2015/12/03 PHP
PHP sleep()函数, usleep()函数
2016/08/25 PHP
基于jQuery实现的向下滑动二级菜单效果代码
2015/08/31 Javascript
jquery通过扩展select控件实现支持enter或focus选择的方法
2015/11/19 Javascript
详解原生JavaScript实现jQuery中AJAX处理的方法
2016/05/10 Javascript
Bootstrap下拉菜单效果实例代码分享
2016/06/30 Javascript
如何制作幻灯片(代码分享)
2017/01/06 Javascript
layer插件select选中默认值的方法
2018/08/14 Javascript
详解如何探测小程序返回到webview页面
2019/05/14 Javascript
用Javascript实现发送短信验证码间隔功能
2021/02/08 Javascript
CentOS安装pillow报错的解决方法
2016/01/27 Python
用python写的一个wordpress的采集程序
2016/02/27 Python
Python对文件操作知识汇总
2016/05/15 Python
python爬虫获取京东手机图片的图文教程
2017/12/29 Python
python操作redis方法总结
2018/06/06 Python
基于Python List的赋值方法
2018/06/23 Python
Python pyinotify模块实现对文档的实时监控功能方法
2018/10/13 Python
python3实现带多张图片、附件的邮件发送
2019/08/10 Python
Python三元运算与lambda表达式实例解析
2019/11/30 Python
python爬虫数据保存到mongoDB的实例方法
2020/07/28 Python
python 密码学示例——理解哈希(Hash)算法
2020/09/21 Python
【HTML5】Canvas绘制简单图片教程
2016/05/13 HTML / CSS
Java如何获得ResultSet的总行数
2016/09/03 面试题
公证书标准格式
2014/04/10 职场文书
八荣八耻演讲稿
2014/09/15 职场文书
幼儿园毕业典礼园长致辞
2015/07/29 职场文书
网吧员工管理制度
2015/08/05 职场文书
详解前端任务构建利器Gulp.js使用指南
2021/04/30 Javascript
Golang: 内建容器的用法
2021/05/05 Golang
Python 数据可视化之Seaborn详解
2021/11/02 Python
JavaWeb Servlet开发注册页面实例
2022/04/11 Java/Android