代码之家  ›  专栏  ›  技术社区  ›  Crimin4L

从正确时区的文件中获取“上次修改”日期?

  •  0
  • Crimin4L  · 技术社区  · 5 年前

    $date = date("F j, Y H:i:s.", filemtime($pfile));
    

    现在的问题是,当我回显它,我没有得到它在我的时区。。。

    示例1:假设我在下午1点(UTC-4)更新文件。任何人看网页都会看到它显示为下午1点(UTC-4),无论他们在哪里。

    1 回复  |  直到 5 年前
        1
  •  1
  •   thingEvery    5 年前

    从PHP获取服务器时间并将其存储在HTML元素中。(还有其他方法传递数据,但这个方法很容易理解。)在这里,我只是使用 time() filemtime 如果省略格式化选项,则方法应返回时间戳。

    然后,从 <div> toLocalString() 将其偏移到用户的本地时间。

    <div id="timeholder" data-time="<?php echo json_encode(time()); ?>"></div>
    <script type="text/javascript">
        var date = new Date(document.getElementById('timeholder').dataset.time * 1000).toLocaleString();
        console.log(date);
    </script>
    
        2
  •  0
  •   Crimin4L    5 年前

    这些简单的代码使我 例1 工作:)感谢@thingEvery的创意!

    <?php
    $filetime = date("U", filemtime($pfile));
    $hoursToSubtract = 4;
    $timeToSubtract = ($hoursToSubtract * 60 * 60);
    
    $mytime = $filetime - $timeToSubtract;
    
    //I needed to print it onto two different lines, that's why I split up :)
    $time1 = date("F j, Y", $mytime);
    $time2 = date("g:i A [e-4]", $mytime);
    ?>
    
    推荐文章