欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

不同访客展示不同内容,同一访客以后访问内容不变,清除缓存除外。

程序员文章站 2023-12-27 14:32:57
...
例如
1、有5个内容A、B、C、D、E,其中一个将要网页的一个或多个位置展示。
2、第一个访问者访问该网页后,看到A内容,以后该访问者再打开这个网页时,看到的都是内容A,除非他清除浏览器缓存。
3、第二个访问者访问该网页后,看到B内容,以后该访问者再打开这个网页时,看到的都是内容B,除非他清除浏览器缓存。
4、。。。
5、第六个访问者访问该网页后,看到A内容,以后该访问者再打开这个网页时,看到的都是内容A,除非他清除浏览器缓存。
6、第七个访问者访问该网页后,看到B内容,以后该访问者再打开这个网页时,看到的都是内容B,除非他清除浏览器缓存。
如些循环

相当于每进一个访客就从5个内容中按顺序取一个显示给访客,取完5个后再循环。

这个功能的代码怎么写呢?


回复讨论(解决方案)

通过 cookie 保存

$arr = array('A','B','C','D','E');$file = 'data.log';// 获取未显示过的page,如全部已显示,则重新赋值if(file_exists($file)){    $data = json_decode(file_get_contents($file),true);    if(!$data){        $data = $arr;    }}else{    $data = $arr;}// 判断用户是否访问过,如访问过直接显示上次访问的结果,否则抽取最前一页,写入用户cookiesif(isset($_COOKIE['show'])){    $result = $_COOKIE['show'];}else{    $result = array_splice($data,0,1);    $result = array_pop($result);    setcookie('show',$result,time()+3600);    file_put_contents($file, json_encode($data), true);}echo $result;

上一篇:

下一篇: