PHP实现将浏览历史页面网址保存到cookie的方法

yipeiwu_com5年前PHP代码库

本文实例讲述了PHP实现将浏览历史页面网址保存到cookie的方法。分享给大家供大家参考。具体如下:

将浏览历史页面网址保存到cookie,大致的思路如下面的代码,与实际应用有些差别。

复制代码 代码如下:
<?php
/*******
 说明:cookie只能保存字符串 本实例中,需要保存多个URL(历史访问记录),思路是先将URL数组转为字符串,然后保存,读取时,再循环读取
*******/

//先假设当前URL为:http://localhost/php/?id=1
$id = $_GET['id'];

if(isset($_COOKIE['his'])){
 $urls = $_COOKIE['his'];//读取cookie
 $arr = unserialize($urls);//字符串转回原来的数组
 $arr[] = $_SERVER['REQUEST_URI'];//当前页面url添加到数组中
 $arr = array_unique($arr);//除去重复的
 if(count($arr)>10){//只保存10条访问记录
  array_shift($arr);
 }
 $urls = serialize($arr);//存储为字符串,
 setcookie('his',$urls);//保存到cookie当中
}else{
 $url = $_SEVER['REQUEST_URI'];//获取当前页面URL
 $arr[] = $url;//将当前URL保存到数组中
 $urls = serialize($arr);//存储为字符串
 setcookie('his',$urls);//保存到cookie当中
}

echo "<a href='/php/?id=".($id-1)."'>上一页</a><br /><br />";//上一页,访问测试用
echo "<a href='/php/?id=".($id+1)."'>下一页</a>";//下一页,访问测试用

?>
<h3>历史访问页面</h3>
<ul>
 <?php foreach($arr as $v){ ?>
 <li><a href="<?php echo $v; ?>"><?php echo $v; ?></a></li>
 <?php } ?>
</ul>

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

相关文章

mac系统下安装多个php并自由切换的方法详解

前言 最近工作中遇到一个问题,需要实现在mac系统下安装多个php并实现自由切换,通过查找相关的资料找到了解决的方法,所以想着总结下来,方便大家和自己学习参考,下面话不多说,来看看的介绍...

PHP面向对象程序设计(OOP)之方法重写(override)操作示例

本文实例讲述了PHP面向对象程序设计(OOP)之方法重写(override)操作。分享给大家供大家参考,具体如下: 因为PHP是弱类型的语言, 所以在方法的参数中本身就可以接收不同类型的...

PHP实现基数排序的方法详解

PHP实现基数排序的方法详解

本文实例讲述了PHP实现基数排序的方法。分享给大家供大家参考,具体如下: 基数排序是根据关键字中各位的值,通过对排序的N个元素进行若干趟“分配”与“收集”来实现排序的。 不妨通过一个具体...

PHP 加密解密内部算法

将它们打包成一个文件就叫fun.php吧 复制代码 代码如下: <?php function passport_encrypt($txt, $key) { srand((doubl...

自制PHP框架之模型与数据库

自制PHP框架之模型与数据库

什么是模型? 我们的WEB系统一定会和各种数据打交道,实际开发过程中,往往一个类对应了关系数据库的一张或多张数据表,这里就会出现两个问题。 1.类和数据表,一方修改会导致另一方的修改,只...