Как отображать в реальном времени изменения в дате и времени сервера каждые 1 сек в php?

Я написал этот php-код, чтобы показать дату и время сервера, но я хотел бы отображать в реальном времени изменение даты и времени сервера каждые 1 сек.

<p><?php echo "Server Time " . date("Y-m-d h:i:s"); ?> (GMT) UTC +0 UK/London</p>

Пожалуйста, помогите мне, спасибо

-3

Решение

Вам нужно будет использовать Javascript, что-то вроде этого:

<body>
<p id="time"></p>
</body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script type="text/javascript">
var timestamp = '<?=time();?>';
function updateTime(){
$('#time').html(Date(timestamp));
timestamp++;
}
$(function(){
setInterval(updateTime, 1000);
});
</script>
5

Другие решения

если вам все еще нужны часы реального времени, которые используют часы вашего сервера, вы можете попробовать это. я использую веточку {{now|date('Y/m/d H:i:s')}}, но вы также можете использовать PHP <?php echo date('Y/m/d H:i:s');?>, его в основном с помощью localStorage хранить дату сервера на localstorage а также setSeconds обновляет localstorage каждую 1 секунду, в то время как переменная now загружает localstorage Дата и преобразует его в формате даты JS. Затем я использую {{now|date('Y/m/d H:i:s')}} внутри date элемент для отката в случае, если локальное хранилище не включено.

  try {
localStorage.setItem('today', new Date("{{now|date('Y/m/d H:i:s')}}");
setInterval(function clock() {
var month = [
"Jan", "Feb", "Marh", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Octr", "Nov", "Dec"];
var now = new Date(localStorage.getItem('today'));
now.setSeconds(now.getSeconds() + 1);
localStorage.setItem('today', now);
var G = format(now.getHours() % 12 || 12);
var i = format(now.getMinutes());
var s = format(now.getSeconds());
var M = month[now.getMonth()];
var d = format(now.getDate());
var Y = now.getFullYear();
function format(data) {
return (data < 10 ? data = "0" + data : data);
}
$("#date").html(M + ". " + d + ", " + Y + " " + G + ":" + i + ":" + s);
return clock;
}(), 1000);
} catch(e) {
console.log(e);
}
1

Для отображения изменяющихся часов, показывающих время сервера, используйте Ajax. Создайте два файла, для этого нужен файл отправки запроса и получения данных с помощью Ajax.

Сервер-clock.php

разработать скрипт, в котором, нажав кнопку, мы можем отправить запрос на сервер для получения данных. В теле этого файла у нас есть кнопка.

 <input type=button value=
'Get Server Time' onclick="timer_function();">

К этому сценарию мы добавим таймер для рекурсивного вызова одной и той же функции Ajax каждую секунду. Это будет получать данные каждую секунду, поэтому мы можем отображать изменяющиеся часы, показывающие время сервера.

function timer_function(){
var refresh=1000; // Refresh rate in milli seconds
mytime=setTimeout('AjaxFunction();',refresh)
}

Функция таймера: timer_function ()

При нажатии этой кнопки запускается функция, которая использует таймер setTimeout. Внутри этой функции таймера она может изменять частоту обновления в миллисекундах. В этой функции мы называем нашу основную функцию Ajax AjaxFunction ()

function timer_function(){
var refresh=1000; // Refresh rate in milli seconds
mytime=setTimeout('AjaxFunction();',refresh)
}

В конце AjaxFunction () снова вызовите timer_function (), чтобы сделать его рекурсивным.

tt=timer_function();

В основном AjaxFunction () отправьте запрос в файл clock.php и получите время сервера. Эти данные отображаются с использованием слоя div.

if(httpxml.readyState==4)
{
document.getElementById("msg").innerHTML=httpxml.responseText;
document.getElementById("msg").style.background='#f1f1f1';
}

Второй файл — это простой PHP-файл с одной строкой кода, в которой указаны текущая дата и время сервера. clock.php

<?Php
echo date("d/m/y : H:i:s", time());
?>

скачать файлы Вот

0