以下是一个简单的PHP和JavaScript实现使用AJAX异步请求服务器时间,然后在客户端实时刷新显示的代码示例:
index.php
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>实时显示北京时间</title> </head> <body> <p id="time"></p> <script> function showTime() { var xmlhttp; if (window.XMLHttpRequest) { xmlhttp = new XMLHttpRequest(); } else { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { var timeStr = this.responseText; document.getElementById('time').innerHTML = timeStr; } }; xmlhttp.open("GET", "get_time.php", true); xmlhttp.send(); } setInterval(showTime, 1000); </script> </body> </html>
get_time.php
<?php date_default_timezone_set('Asia/Shanghai'); echo date('Y-m-d H:i:s');
在上面的代码中,我们在客户端定义了一个showTime
函数,该函数使用AJAX异步请求服务器上的get_time.php
脚本获取当前时间,并将时间字符串显示在页面上。在get_time.php
脚本中,我们使用date
函数获取当前时间,并以字符串形式输出。 使用setInterval
函数每秒钟调用一次showTime
函数,实现实时刷新的功能。
需要注意的是,在使用AJAX异步请求服务器时间时,可能会存在跨域问题。如果index.php
和get_time.php
不在同一个域名下,需要在服务器端进行跨域处理。
评论