首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHP 簡易鬧鐘程式:Meta Refresh 實現定時提醒與音樂播放

     編輯:PHP 相關知識

程式概念

利用 HTTP `` 實現頁面定時重導向,模擬鬧鐘流程:顯示目前時間 → 等待 N 秒 → 進入「睡眠」倒數 → 時間到播放音樂提醒起床。純 PHP + HTML,無需 JavaScript。

完整程式碼 (alarm.php)

<?php
error_reporting(E_ERROR | E_WARNING | E_PARSE);
ob_start();

// 階段判斷:i=0 顯示目前時間,i=1 進入睡眠倒數,i=2 播放音樂
$i = isset($_GET['i']) ? (int)$_GET['i'] : 0;
$t1 = isset($_GET['t1']) ? (int)$_GET['t1'] : 0;

function refresh($msg, $url, $sec = 3) {
    echo $msg . "
\n"; echo "\n"; } if ($i === 0) { $msg = '現在時間是: ' . date('H:i:s') . '
趕快睡覺吧'; $t = time(); refresh($msg, "alarm.php?i=1&t1={$t}", 5); } elseif ($i === 1) { $msg = '現在時間是: ' . date('H:i:s'); $t2 = time(); $slept = $t2 - $t1; $msg .= "
你睡了 {$slept} 秒,該起床啦!"; refresh($msg, 'alarm.php?i=2', 3); } elseif ($i === 2) { // 使用 Windows Media Player ActiveX / embed 播放線上音樂 echo << EOT; } ?>

運作流程圖解

alarm.php?i=0
   │  顯示目前時間 + "趕快睡覺"
   │  meta refresh 5 秒
   ▼
alarm.php?i=1&t1=timestamp
   │  顯示睡眠秒數 + "該起床"
   │  meta refresh 3 秒
   ▼
alarm.php?i=2
   │  嵌入 WMP 播放音樂
   ▼
結束

關鍵技術點

  • Meta Refresh:`` 為最簡單的客戶端導向,無需 JS 支援。
  • 狀態保持:透過 URL 參數 `i` (階段) 與 `t1` (起始時間) 傳遞狀態,無需 Session/Cookie。
  • 音樂播放:範例使用已淘汰的 WMP ActiveX,現代瀏覽器建議改用 ``。
  • ob_start():緩衝輸出確保 `header()`/`meta` 正常發送(雖此處未用 header)。

改良建議

  1. 改用 `
  2. 加入鬧鐘設定表單(輸入目標時間),後端計算倒數秒數。
  3. 使用 JavaScript `setInterval` 即時更新倒數,體驗更佳。
  4. 將音樂檔案放在本地相對路徑,避免外部連結失效。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved