PHP 实现顺序跳转网址:使用 Cookie 记录访问历史
这段代码使用 PHP 和 Cookie 实现网站访问顺序跳转功能。每次访问都会判断当前网址是否在需要跳转的网址数组中,如果是,则按顺序跳转到下一个网址,如果不是,则跳转到第一个网址。同时,使用 Cookie 记录访问过的网址,下次访问时从下一个网址开始跳转。
// 定义需要跳转的网址数组
$urls = array(
'http://www.baidu.com',
'http://qq.com',
'http://t.cn'
);
// 获取当前访问的网址
$current_url = $_SERVER['REQUEST_URI'];
// 判断当前网址是否在需要跳转的网址数组中
if (in_array($current_url, $urls)) {
// 获取当前网址在数组中的索引
$index = array_search($current_url, $urls);
// 判断是否为最后一个网址
if ($index == count($urls) - 1) {
// 如果是最后一个网址,则跳转到第一个网址
header('Location: ' . $urls[0]);
// 记录访问过的网址
setcookie('visited_urls', $urls[0]);
} else {
// 否则跳转到下一个网址
header('Location: ' . $urls[$index + 1]);
// 记录访问过的网址
setcookie('visited_urls', $urls[$index + 1]);
}
} else {
// 如果当前网址不需要跳转,则跳转到第一个网址
header('Location: ' . $urls[0]);
// 记录访问过的网址
setcookie('visited_urls', $urls[0]);
}
// 获取访问过的网址
$visited_urls = isset($_COOKIE['visited_urls']) ? $_COOKIE['visited_urls'] : $urls[0];
// 获取访问过的网址在数组中的索引
$visited_index = array_search($visited_urls, $urls);
// 如果访问过的网址不是最后一个,则跳转到下一个网址
if ($visited_index != count($urls) - 1) {
header('Location: ' . $urls[$visited_index + 1]);
// 更新访问过的网址
setcookie('visited_urls', $urls[$visited_index + 1]);
}
具体实现方法如下:
- 首先定义需要跳转的网址数组
$urls,可以根据需求自行修改。 - 获取当前访问的网址
$current_url,使用$_SERVER['REQUEST_URI']来获取。 - 判断当前网址是否在需要跳转的网址数组中,使用
in_array()函数来判断。 - 如果当前网址在数组中,则获取当前网址在数组中的索引
$index。 - 判断是否为最后一个网址,如果是则跳转到第一个网址,否则跳转到下一个网址。
- 如果当前网址不需要跳转,则跳转到第一个网址。
- 使用
setcookie()函数记录访问过的网址,下次访问时从下一个网址开始跳转。
原文地址: https://www.cveoy.top/t/topic/otaq 著作权归作者所有。请勿转载和采集!