php实现页面刷新
PHP 实现页面刷重的几种方法
在 PHP 中实现页面刷新可以通过多种方式完成,以下是常见的几种方法:
使用 header() 函数进行重定向
通过发送 HTTP 头信息实现页面刷新或跳转:
header("Refresh:0"); // 立即刷新当前页面
header("Refresh:3; url=page.php"); // 3秒后跳转到指定页面
注意:必须在输出任何内容前调用 header() 函数。
通过 JavaScript 实现
在 PHP 中嵌入 JavaScript 代码实现刷新:
echo '<script>location.reload();</script>'; // 重新加载当前页面
echo '<script>window.location.href = "page.php";</script>'; // 跳转到指定页面
使用 meta 标签自动刷新
在 PHP 输出的 HTML 中加入 meta 刷新标签:
echo '<meta http-equiv="refresh" content="5">'; // 5秒后刷新当前页
echo '<meta http-equiv="refresh" content="0;url=page.php">'; // 立即跳转
表单提交后刷新
处理表单提交后刷新页面防止重复提交:
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
// 处理表单数据
header("Location: ".$_SERVER['PHP_SELF']);
exit;
}
使用 session 控制刷新
通过 session 防止重复操作:
session_start();
if (!isset($_SESSION['token'])) {
$_SESSION['token'] = uniqid();
}
if ($_POST['token'] == $_SESSION['token']) {
// 处理逻辑
unset($_SESSION['token']);
header("Location: ".$_SERVER['PHP_SELF']);
exit;
}
注意事项
- 使用 header() 函数前不能有任何输出
- JavaScript 方法依赖客户端浏览器支持
- 自动刷新可能影响用户体验,应谨慎使用
- 对于表单处理,建议使用 Post/Redirect/Get (PRG) 模式







