php - 如何每 10.6 秒从时间戳增加 +1

标签 php javascript time increment

我正在为狗救援组织配置站点。 我试图创建一个安乐死计数器,以直观地显示美国每天有多少只狗被杀死。 一个使用当前时间的实时“死亡计数器”,它会为访问者不间断地逐页计数。

我希望计数器每天午夜从 0 开始。 然后,我希望计数器每 10.6 秒增加 +1。

我的想法充其量只是一种黑客攻击,而且似乎并不准确。

下面是我令人尴尬的代码,我知道数学是错误的,但我的理解力有限。 此外,我对 strtotime 缺乏了解,可能会添加不必要的行。

        <?php
    $tsdate = date('d-m-Y');
    $date = date('m/d/Y');
    $timestamp = strtotime($tsdate);
    ?>
    <b><font color="#ff0000">
<span id="number"><?=(int)((time()-$timestamp)/14.6);?></span>
</font> dogs have been put to death in this country TODAY <?php echo $date ?>.<br />
Don't buy - Don't breed - ADOPT! </b>

    <script type="text/javascript">
        var i = <?=(int)((time()-$timestamp)/14.6);?>;
        function increment() {
            i++;
            document.getElementById('number').innerHTML = i;
        }
        setInterval('increment()', 10600);
    </script>

代码可以正常运行,但是,您可以看到我需要帮助,而且我几乎无能为力。 我不得不使用上面看到的 14.6 来获得接近但不正确的结果。

我还想显示当年的运行总计。

有人可以帮助我吗?

非常感谢您的帮助,但我无法使其正常运行。这是我所拥有的:

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <title> count up test </title>

<script type='text/javascript'>
var div = document.getElementById('count');
var yeardiv = document.getElementById('yearcount');

function updateCount() {
    var d = new Date();
    // set d to midnight
    d.setHours(0,0,0,0);
    var count = Math.floor( ( new Date().getTime() - d.getTime() ) / 10600 );
    div.innerHTML = count;

    // set d to Jan 1st
    d.setMonth( 0 );
    d.setDate( 1 );
    count = Math.floor( ( new Date().getTime() - d.getTime() ) / 10600 )
    yeardiv.innerHTML = count;
}

updateCount();
setInterval( updateCount, 10600 );


</script>


</head>
<body>
Today: <div id="count"></div><br/>
This Year: <div id="yearcount"></div>

</body>


</html>

上面不显示计数,只显示文字...

感谢您的作品!!

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <title> count up test THANKS to agreco </title>
</head>
<body>

Today: <div id="count"></div><br/>
This Year: <div id="yearcount"></div>

<script type='text/javascript'>
var div = document.getElementById('count');
var yeardiv = document.getElementById('yearcount');

function updateCount() {
    var d = new Date();
    // set d to midnight
    d.setHours(0,0,0,0);
    var count = Math.floor( ( new Date().getTime() - d.getTime() ) / 10600 );
    div.innerHTML = count;

    // set d to Jan 1st
    d.setMonth( 0 );
    d.setDate( 1 );
    count = Math.floor( ( new Date().getTime() - d.getTime() ) / 10600 )
    yeardiv.innerHTML = count;
}

updateCount();
setInterval( updateCount, 10600 );
</script>
</body>
</html>

非常感谢您的帮助!

最佳答案

最好在 javascript 中完成这一切。正如其他评论所说,它也将包括用户时区,其中 php 将基于服务器时间。

这也是年份的更新代码:

var div = document.getElementById('count');
var yeardiv = document.getElementById('yearcount');

function updateCount() {
    var d = new Date();
    // set d to midnight
    d.setHours(0,0,0,0);
    var count = Math.floor( ( new Date().getTime() - d.getTime() ) / 10600 );
    div.innerHTML = count;

    // set d to Jan 1st
    d.setMonth( 0 );
    d.setDate( 1 );
    count = Math.floor( ( new Date().getTime() - d.getTime() ) / 10600 )
    yeardiv.innerHTML = count;
}

updateCount();
setInterval( updateCount, 10600 );

看这个fiddle

我没有递增,而是根据现在 - 午夜

计算计数

关于php - 如何每 10.6 秒从时间戳增加 +1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12373257/

相关文章:

php - 需要一个 PHP 解释器

php - 如何使用 Symfony 按其他实体对实体进行分组

javascript - Three.js 中的帧速率异常高

php - 奇怪的 MySQL/PHP 错误

php - 是否可以一次将多个数据添加到一列中?

Javascript 下拉 新问题

javascript - 根据屏幕尺寸用 jQuery 替换样式表

无法在索引 19 处解析 Java 8 日期/时间 : instant,

c - 在特定时间运行 void 函数

JavaScript - 将 Date() 转换为秒