当前位置:首页>java>附件:四大时光轮显示系统网页程序代码

附件:四大时光轮显示系统网页程序代码

  • 2026-01-07 13:25:27
附件:四大时光轮显示系统网页程序代码

<!6012 html>

<html lang="zh-CN">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>神奇的自然钟</title>

    <style>

        * {

            margin: 0;

            padding: 0;

            box-sizing: border-box;

        }

        body {

            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif;

            background: linear-gradient(135deg, #1a1a2e#16213e);

            color: #fff;

            min-height: 100vh;

            display: flex;

            flex-direction: column;

            align-items: center;

            padding: 20px;

            overflow-x: hidden;

        }

        .container {

            max-width: 900px;

            width: 100%;

            display: flex;

            flex-direction: column;

            align-items: center;

        }

        header {

            text-align: center;

            margin-bottom: 20px;

            width: 100%;

        }

        h1 {

            font-size: 2.2rem;

            margin-bottom: 10px;

            color: #e94560;

            text-shadow: 0 0 10px rgba(233, 69, 96, 0.5);

        }

        .subtitle {

            font-size: 1.1rem;

            color: #b8b8b8;

            margin-bottom: 20px;

        }

        .clock-container {

            position: relative;

            width: 100%;

            max-width: 700px;

            margin: 0 auto 30px;

            padding: 20px;

        }

        canvas {

            display: block;

            margin: 0 auto;

            border-radius: 50%;

            box-shadow: 0 0 30px rgba(0, 0, 0, 0.7);

            background: rgba(10, 10, 20, 0.9);

            max-width: 100%;

            height: auto;

        }

        .info-panel {

            width: 100%;

            max-width: 600px;

            background: rgba(30, 30, 50, 0.7);

            border-radius: 15px;

            padding: 20px;

            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);

            margin-bottom: 20px;

        }

        .info-section {

            margin-bottom: 15px;

        }

        .info-title {

            font-size: 1.3rem;

            margin-bottom: 10px;

            color: #e94560;

            border-bottom: 1px solid #333;

            padding-bottom: 5px;

        }

        .pointers-info {

            display: grid;

            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));

            gap: 15px;

        }

        .pointer-item {

            padding: 10px;

            border-radius: 8px;

            background: rgba(40, 40, 60, 0.5);

        }

        .pointer-name {

            font-weight: bold;

            margin-bottom: 5px;

        }

        .pointer-desc {

            font-size: 0.9rem;

            color: #b8b8b8;

        }

        .current-time {

            font-size: 1.5rem;

            text-align: center;

            margin: 15px 0;

            color: #0fccce;

            font-weight: bold;

        }

        .legend {

            display: flex;

            flex-wrap: wrap;

            justify-content: center;

            gap: 15px;

            margin-top: 15px;

        }

        .legend-item {

            display: flex;

            align-items: center;

            gap: 8px;

        }

        .legend-color {

            width: 15px;

            height: 15px;

            border-radius: 50%;

        }

        .time-controls {

            display: flex;

            flex-wrap: wrap;

            justify-content: center;

            gap: 15px;

            margin-top: 20px;

        }

        .time-input-group {

            display: flex;

            flex-direction: column;

            align-items: center;

            gap: 5px;

        }

        .time-input-group label {

            font-size: 0.9rem;

            color: #b8b8b8;

        }

        .time-input {

            width: 80px;

            padding: 8px;

            border: 1px solid #444;

            border-radius: 5px;

            background: rgba(20, 20, 30, 0.8);

            color: #fff;

            text-align: center;

            font-size: 1rem;

        }

        .time-input:focus {

            outline: none;

            border-color: #0fccce;

        }

        .control-buttons {

            display: flex;

            gap: 10px;

            margin-top: 15px;

        }

        .btn {

            padding: 8px 16px;

            border: none;

            border-radius: 5px;

            background: #0fccce;

            color: #fff;

            font-size: 1rem;

            cursor: pointer;

            transition: background 0.3s;

        }

        .btn:hover {

            background: #0db9bb;

        }

        .btn-reset {

            background: #e94560;

        }

        .btn-reset:hover {

            background: #d8344f;

        }

        footer {

            margin-top: 20px;

            text-align: center;

            color: #666;

            font-size: 0.9rem;

        }

        @media (max-width: 700px) {

            h1 {

                font-size: 1.8rem;

            }

            .pointers-info {

                grid-template-columns: 1fr;

            }

            .clock-container {

                max-width: 95vw;

                padding: 10px;

            }

            .time-controls {

                flex-direction: column;

                align-items: center;

            }

            .current-time {

                font-size: 1.2rem;

            }

        }

        @media (max-width: 480px) {

            h1 {

                font-size: 1.5rem;

            }

            .subtitle {

                font-size: 0.9rem;

            }

            .current-time {

                font-size: 1rem;

            }

            .time-input {

                width: 70px;

                font-size: 0.9rem;

            }

            .btn {

                padding: 6px 12px;

                font-size: 0.9rem;

            }

        }

    </style>

</head>

<body>

    <div class="container">

        <header>

            <h1>神奇的自然钟</h1>

            <p class="subtitle">四指针周期时间显示系统</p>

        </header>

        <div class="clock-container">

            <canvas id="clockCanvas" width="700" height="700"></canvas>

        </div>

        <div class="current-time" id="currentTime"></div>

        <div class="info-panel">

            <div class="info-section">

                <h2 class="info-title">时间设置</h2>

                <div class="time-controls">

                    <div class="time-input-group">

                        <label for="yearInput">年</label>

                        <input type="number" id="yearInput" class="time-input" min="1800" max="2100" value="2023">

                    </div>

                    <div class="time-input-group">

                        <label for="monthInput">月</label>

                        <input type="number" id="monthInput" class="time-input" min="1" max="12" value="10">

                    </div>

                    <div class="time-input-group">

                        <label for="dayInput">日</label>

                        <input type="number" id="dayInput" class="time-input" min="1" max="31" value="15">

                    </div>

                    <div class="time-input-group">

                        <label for="hourInput">时</label>

                        <input type="number" id="hourInput" class="time-input" min="0" max="23" value="12">

                    </div>

                    <div class="time-input-group">

                        <label for="minuteInput">分</label>

                        <input type="number" id="minuteInput" class="time-input" min="0" max="59" value="0">

                    </div>

                </div>

                <div class="control-buttons">

                    <button id="setTimeBtn" class="btn">设置时间</button>

                    <button id="resetTimeBtn" class="btn btn-reset">重置为当前时间</button>

                </div>

            </div>

            <div class="info-section">

                <h2 class="info-title">指针信息</h2>

                <div class="pointers-info">

                    <div class="pointer-item">

                        <div class="pointer-name" style="color: #ff4d4d;">24小时指针</div>

                        <div class="pointer-desc">对应人体12经脉循环,最短的周期</div>

                    </div>

                    <div class="pointer-item">

                        <div class="pointer-name" style="color: #4dff4d;">60天周期指针</div>

                        <div class="pointer-desc">自然界无形的小手,次短周期</div>

                    </div>

                    <div class="pointer-item">

                        <div class="pointer-name" style="color: #4d9dff;">年周期指针</div>

                        <div class="pointer-desc">我们的四季,我们的轮回,次长周期</div>

                    </div>

                    <div class="pointer-item">

                        <div class="pointer-name" style="color: #ffdd4d;">60年周期指针</div>

                        <div class="pointer-desc">30年河东,30年河西,最长周期</div>

                    </div>

                </div>

            </div>

            <div class="legend">

                <div class="legend-item">

                    <div class="legend-color" style="background-color: #ff4d4d;"></div>

                    <span>24小时指针</span>

                </div>

                <div class="legend-item">

                    <div class="legend-color" style="background-color: #4dff4d;"></div>

                    <span>60天周期指针</span>

                </div>

                <div class="legend-item">

                    <div class="legend-color" style="background-color: #4d9dff;"></div>

                    <span>年周期指针</span>

                </div>

                <div class="legend-item">

                    <div class="legend-color" style="background-color: #ffdd4d;"></div>

                    <span>60年周期指针</span>

                </div>

            </div>

        </div>

        <footer>

            <p>天人合一的自然周期钟表 &copy; 2025张宇川</p>

        </footer>

    </div>

    <script>

        // 获取Canvas元素和上下文

        const canvas = document.getElementById('clockCanvas');

        const ctx = canvas.getContext('2d');

        // 获取时间输入元素

        const yearInput = document.getElementById('yearInput');

        const monthInput = document.getElementById('monthInput');

        const dayInput = document.getElementById('dayInput');

        const hourInput = document.getElementById('hourInput');

        const minuteInput = document.getElementById('minuteInput');

        const setTimeBtn = document.getElementById('setTimeBtn');

        const resetTimeBtn = document.getElementById('resetTimeBtn');

        // 当前显示的时间(默认为系统时间)

        let currentDisplayTime = new Date();

        // 响应式调整Canvas大小

        function resizeCanvas() {

            const container = canvas.parentElement;

            const maxSize = Math.min(container.offsetWidth, 700);

            canvas.width = maxSize;

            canvas.height = maxSize;

        }

        // 初始化时调整大小

        resizeCanvas();

        window.addEventListener('resize', resizeCanvas);

        // 颜色定义

        const colors = {

            hourPointer: '#ff4d4d',      // 红色 - 24小时指针

            dayPointer: '#4dff4d',       // 绿色 - 60天周期指针

            yearPointer: '#4d9dff',      // 蓝色 - 年周期指针

            cyclePointer: '#ffdd4d',     // 黄色 - 60年周期指针

            background: '#0a0a14',

            face: '#1a1a2e',

            tick: '#ffffff',

            text: '#ffffff',

            meridianText: '#a0a0ff'      // 经络名称颜色

        };

        // 经络名称数组

        const meridianNames = [

            "足少阳", "足厥阴", "手太阴", "手阳明", 

            "足阳明", "足太阴", "手少阴", "手太阳", 

            "足太阳", "足少阴", "手厥阴", "手少阳"

        ];

        // 绘制钟表表盘

        function drawClockFace() {

            const centerX = canvas.width / 2;

            const centerY = canvas.height / 2;

            // 减小表盘半径,为外部元素留出空间

            const radius = Math.min(centerX, centerY) * 0.75;

            // 绘制外圆

            ctx.beginPath();

            ctx.arc(centerX, centerY, radius, 0, Math.PI * 2);

            ctx.fillStyle = colors.face;

            ctx.fill();

            ctx.strokeStyle = colors.tick;

            ctx.lineWidth = 2;

            ctx.stroke();

            // 绘制60个刻度

            for (let i = 0; i < 60; i++) {

                const angle = (i * 6 - 90) * Math.PI / 180; // -90度使0点在顶部

                const tickLength = i % 5 === 0 ? 20 : 10;

                const tickWidth = i % 5 === 0 ? 3 : 1;

                const innerRadius = radius - tickLength;

                ctx.beginPath();

                ctx.moveTo(

                    centerX + innerRadius * Math.cos(angle),

                    centerY + innerRadius * Math.sin(angle)

                );

                ctx.lineTo(

                    centerX + radius * Math.cos(angle),

                    centerY + radius * Math.sin(angle)

                );

                ctx.strokeStyle = colors.tick;

                ctx.lineWidth = tickWidth;

                ctx.stroke();

                // 绘制数字(每5个刻度)

                if (i % 5 === 0) {

                    const textRadius = innerRadius - 15;

                    ctx.font = `${Math.max(14, radius * 0.04)}px -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif`;

                    ctx.fillStyle = colors.text;

                    ctx.textAlign = 'center';

                    ctx.textBaseline = 'middle';

                    ctx.fillText(

                        i.toString(),

                        centerX + textRadius * Math.cos(angle),

                        centerY + textRadius * Math.sin(angle)

                    );

                    // 绘制经络名称

                    const meridianIndex = i / 5;

                    if (meridianIndex < meridianNames.length) {

                        const meridianRadius = radius + 30;

                        ctx.font = `${Math.max(12, radius * 0.035)}px -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif`;

                        ctx.fillStyle = colors.meridianText;

                        ctx.textAlign = 'center';

                        ctx.textBaseline = 'middle';

                        ctx.fillText(

                            meridianNames[meridianIndex],

                            centerX + meridianRadius * Math.cos(angle),

                            centerY + meridianRadius * Math.sin(angle)

                        );

                    }

                }

            }

            // 绘制中心点

            ctx.beginPath();

            ctx.arc(centerX, centerY, 5, 0, Math.PI * 2);

            ctx.fillStyle = colors.text;

            ctx.fill();

        }

        // 计算24小时指针位置

        function calculateHourPointer() {

            const hours = currentDisplayTime.getHours();

            const minutes = currentDisplayTime.getMinutes();

            // 24小时制,转换为60刻度(24小时 = 60刻度)

            // 每个小时对应 60/24 = 2.5 刻度

            const hourPosition = (hours + minutes/60) * 2.5;

            return hourPosition;

        }

        // 计算60天周期指针位置

        function calculateDayPointer() {

            // 基准点:1871年11月26日

            const baseDate = new Date(1871, 10, 26); // 月份从0开始,所以11月是10

            // 计算从基准日到当前显示时间的天数

            const timeDiff = currentDisplayTime.getTime() - baseDate.getTime();

            const daysDiff = Math.floor(timeDiff / (1000 * 3600 * 24));

            // 60天周期,转换为60刻度

            const dayPosition = daysDiff % 60;

            return dayPosition;

        }

        // 计算年周期指针位置(冬至为起点)

        function calculateYearPointer() {

            const currentYear = currentDisplayTime.getFullYear();

            // 计算当前年份的冬至(12月21日)

            const winterSolstice = new Date(currentYear, 11, 21); // 12月是11

            // 计算从去年冬至到当前显示时间的天数

            let daysFromSolstice;

            if (currentDisplayTime >= winterSolstice) {

                // 如果当前显示时间在冬至之后,使用今年的冬至

                daysFromSolstice = Math.floor((currentDisplayTime - winterSolstice) / (1000 * 3600 * 24));

            } else {

                // 如果当前显示时间在冬至之前,使用去年的冬至

                const lastWinter = new Date(currentYear - 1, 11, 21);

                daysFromSolstice = Math.floor((currentDisplayTime - lastWinter) / (1000 * 3600 * 24));

            }

            // 一年365天映射到60刻度

            const yearPosition = (daysFromSolstice % 365) * (60/365);

            return yearPosition;

        }

        // 计算60年周期指针位置

        function calculateCyclePointer() {

            // 基准点:1871年

            const baseYear = 1871;

            const currentYear = currentDisplayTime.getFullYear();

            // 计算从1871年至今的年数

            const yearsPassed = currentYear - baseYear;

            // 60年周期,转换为60刻度

            const cyclePosition = yearsPassed % 60;

            return cyclePosition;

        }

        // 绘制指针

        function drawPointer(position, color, width) {

            const centerX = canvas.width / 2;

            const centerY = canvas.height / 2;

            const radius = Math.min(centerX, centerY) * 0.75; // 使用与表盘相同的半径

            // 所有指针使用相同长度 - 红色指针的长度 (0.85)

            const length = radius * 0.85;

            const angle = (position * 6 - 90) * Math.PI / 180; // 每个刻度6度

            ctx.beginPath();

            ctx.moveTo(centerX, centerY);

            ctx.lineTo(

                centerX + length * Math.cos(angle),

                centerY + length * Math.sin(angle)

            );

            ctx.strokeStyle = color;

            ctx.lineWidth = width;

            ctx.lineCap = 'round';

            ctx.stroke();

            // 在指针末端添加圆形标记

            ctx.beginPath();

            ctx.arc(

                centerX + length * Math.cos(angle),

                centerY + length * Math.sin(angle),

                width * 1.5, 0, Math.PI * 2

            );

            ctx.fillStyle = color;

            ctx.fill();

        }

        // 更新当前时间显示

        function updateCurrentTime() {

            const year = currentDisplayTime.getFullYear();

            const month = String(currentDisplayTime.getMonth() + 1).padStart(2, '0');

            const day = String(currentDisplayTime.getDate()).padStart(2, '0');

            const hours = String(currentDisplayTime.getHours()).padStart(2, '0');

            const minutes = String(currentDisplayTime.getMinutes()).padStart(2, '0');

            const seconds = String(currentDisplayTime.getSeconds()).padStart(2, '0');

            const timeString = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;

            document.getElementById('currentTime').textContent = `显示时间: ${timeString}`;

        }

        // 更新输入框中的时间

        function updateInputFields() {

            yearInput.value = currentDisplayTime.getFullYear();

            monthInput.value = String(currentDisplayTime.getMonth() + 1).padStart(2, '0');

            dayInput.value = String(currentDisplayTime.getDate()).padStart(2, '0');

            hourInput.value = String(currentDisplayTime.getHours()).padStart(2, '0');

            minuteInput.value = String(currentDisplayTime.getMinutes()).padStart(2, '0');

        }

        // 绘制所有指针

        function drawPointers() {

            const hourPos = calculateHourPointer();

            const dayPos = calculateDayPointer();

            const yearPos = calculateYearPointer();

            const cyclePos = calculateCyclePointer();

            // 绘制指针(从细到粗,避免覆盖)

            drawPointer(cyclePos, colors.cyclePointer,1);  // 60年周期指针 - 最细

            drawPointer(yearPos, colors.yearPointer, 2);     // 年周期指针

            drawPointer(dayPos, colors.dayPointer, 3);       // 60天周期指针

            drawPointer(hourPos, colors.hourPointer, 4);    // 24小时指针 - 最粗

        }

        // 绘制钟表

        function drawClock() {

            // 清空画布

            ctx.clearRect(0, 0, canvas.width, canvas.height);

            // 绘制表盘

            drawClockFace();

            // 绘制指针

            drawPointers();

            // 更新当前时间显示

            updateCurrentTime();

        }

        // 设置自定义时间

        function setCustomTime() {

            const year = parseInt(yearInput.value);

            const month = parseInt(monthInput.value) - 1; // 月份从0开始

            const day = parseInt(dayInput.value);

            const hour = parseInt(hourInput.value);

            const minute = parseInt(minuteInput.value);

            // 创建新的日期对象

            currentDisplayTime = new Date(year, month, day, hour, minute, 0);

            // 重绘钟表

            drawClock();

        }

        // 重置为当前系统时间

        function resetToCurrentTime() {

            currentDisplayTime = new Date();

            updateInputFields();

            drawClock();

        }

        // 初始化并开始动画

        function init() {

            // 初始化输入框为当前时间

            updateInputFields();

            // 绘制初始钟表

            drawClock();

            // 添加事件监听器

            setTimeBtn.addEventListener('click', setCustomTime);

            resetTimeBtn.addEventListener('click', resetToCurrentTime);

            // 每秒更新一次(仅在显示系统时间时)

            setInterval(() => {

                // 只有当显示的是系统当前时间时才自动更新

                // 如果用户设置了自定义时间,则不自动更新

                const now = new Date();

                if (

                    currentDisplayTime.getFullYear() === now.getFullYear() &&

                    currentDisplayTime.getMonth() === now.getMonth() &&

                    currentDisplayTime.getDate() === now.getDate() &&

                    currentDisplayTime.getHours() === now.getHours() &&

                    currentDisplayTime.getMinutes() === now.getMinutes()

                ) {

                    // 如果显示的时间与当前系统时间一致,则更新为最新系统时间

                    currentDisplayTime = now;

                    updateInputFields();

                    drawClock();

                }

            }, 1000);

        }

        // 页面加载完成后初始化

        window.addEventListener('load', init);

    </script>

</body>

</html>

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-02-09 01:04:19 HTTP/2.0 GET : https://f.mffb.com.cn/a/459942.html
  2. 运行时间 : 0.158350s [ 吞吐率:6.32req/s ] 内存消耗:4,624.44kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=c568fd1afdbaeebdf8c84c62cf754bd5
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000431s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000799s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000265s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000299s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000482s ]
  6. SELECT * FROM `set` [ RunTime:0.000214s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000628s ]
  8. SELECT * FROM `article` WHERE `id` = 459942 LIMIT 1 [ RunTime:0.000721s ]
  9. UPDATE `article` SET `lasttime` = 1770570259 WHERE `id` = 459942 [ RunTime:0.003600s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 65 LIMIT 1 [ RunTime:0.000236s ]
  11. SELECT * FROM `article` WHERE `id` < 459942 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000431s ]
  12. SELECT * FROM `article` WHERE `id` > 459942 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000350s ]
  13. SELECT * FROM `article` WHERE `id` < 459942 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.004643s ]
  14. SELECT * FROM `article` WHERE `id` < 459942 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.003613s ]
  15. SELECT * FROM `article` WHERE `id` < 459942 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.003586s ]
0.159852s