You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于时间每10分钟轮换URL的PHP代码改造需求

基于时间的URL轮换PHP实现

修改思路

核心逻辑是通过时间差计算当前应展示的URL索引,实现每10分钟按顺序轮换、循环展示的效果:

  1. 计算从固定起始点到当前时间的总分钟数
  2. 除以10分钟的轮换间隔,得到已走过的周期数
  3. 用周期数对URL总数取模,锁定当前要跳转的URL索引,完成循环

修改后的代码

<?php
$version = "v1.01";
$linksfile = "urlrotator.txt";
$rotation_interval = 10; // 轮换间隔(分钟)

// 读取URL列表并过滤空行,避免无效条目干扰
$urls = array_filter(file($linksfile), function($line) {
    return trim($line) !== '';
});
$url_count = count($urls);

if ($url_count === 0) {
    die('URL列表为空,请检查urlrotator.txt文件');
}

// 计算当前应展示的URL索引
$current_time = time();
$total_minutes = floor($current_time / 60); // 转换为总分钟数
$cycle_number = floor($total_minutes / $rotation_interval); // 计算已过的10分钟周期数
$current_index = $cycle_number % $url_count; // 取模得到循环索引

// 取出目标URL并跳转
$goto = trim($urls[$current_index]);
header("Location: $goto");
?>

代码细节说明

  • 空行过滤:用array_filter处理读取的URL列表,避免文件末尾空行导致的索引错误
  • 自定义起始时间:如果不想从Unix纪元开始轮换,可替换时间计算逻辑为自定义起始点,示例:
    $start_time = strtotime('2024-01-01 00:00:00'); // 自定义起始时间
    $time_diff = time() - $start_time;
    $total_minutes = floor($time_diff / 60);
    
  • 循环验证:每10分钟周期内,URL会按nr1.html→nr2.html→…→nr10.html→nr1.html的顺序循环跳转

内容的提问来源于stack exchange,提问作者Jess Sogaard

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 07:05:17