用php编写程序,利用 Cookie 记录用户浏览过的网页标题。浏览记录为同类商品:水浒传 红楼梦 三国演义;您最近的浏览历史:1.西游记 2.水浒传 3.水浒传 4.三国演义 5.水浒传
时间: 2024-03-03 17:53:47 浏览: 68
您好,针对您的问题,我可以给出以下 PHP 代码实现:
```php
<?php
// 设置 cookie 的过期时间为一周
$expire_time = time() + 7 * 24 * 60 * 60;
// 定义一个数组,存储同类商品的标题
$titles = array("水浒传", "红楼梦", "三国演义");
// 获取当前浏览的页面标题
$page_title = "当前页面标题"; // 此处为测试代码,需要根据实际情况获取页面标题
// 获取已有的浏览历史记录
if(isset($_COOKIE['history'])){
$history = unserialize($_COOKIE['history']);
} else {
$history = array();
}
// 如果当前浏览的页面标题属于同类商品中的一种,则记录浏览历史
if(in_array($page_title, $titles)){
array_unshift($history, $page_title); // 将当前浏览的页面标题插入到浏览历史数组的开头
$history = array_unique($history); // 去重
$history = array_slice($history, 0, 5); // 只保留最近的 5 条浏览历史记录
setcookie('history', serialize($history), $expire_time); // 将浏览历史记录保存到 cookie 中
}
// 输出浏览历史记录
echo "您最近的浏览历史:";
foreach($history as $key => $value){
echo ($key + 1) . "." . $value . " ";
}
?>
```
上述代码中,我们首先定义了一个 `$titles` 数组,用于存储同类商品的标题。然后,通过 `$_COOKIE` 全局变量获取已有的浏览历史记录,如果不存在,则创建一个空数组。
接下来,我们判断当前浏览的页面标题是否属于同类商品中的一种,如果是,则将其插入到浏览历史数组的开头,并进行去重和截取操作,只保留最近的 5 条浏览历史记录。最后,将浏览历史记录保存到 cookie 中。
最后,我们通过 `echo` 输出浏览历史记录。
阅读全文