0

在页面的标题中,我想插入一个包含当前日期的 div。我不确定 jquery 是否可以处理这个(也许是 php)是一个更好的方法。

我想用格式(示例)2013 年 8 月 20 日的当前日期填充页面标题中的 div。

4

5 回答 5

4

date()为此,您可以简单地使用 PHP 的内置函数:

<div id="foo"> 
<?php echo date('dS F Y'); ?>
</div>

输出:

23rd August 2013  

文档:date()

于 2013-08-23T17:54:35.547 回答
0

PHP(如果在 php.ini 中启用了短标签)

<div><?=date('jS F Y');?></div>
于 2013-08-23T18:07:08.297 回答
0

或者你可以使用 JS日期对象

例子:

<div>
 <script>
 var d=new Date();
 document.write(d);
 </script>
</div>

结果是:

Fri Aug 23 2013 20:10:30 GMT+0200 (CEST)
于 2013-08-23T18:11:49.953 回答
0

PHP 将是更简单、更实用的方法。

jQuery 没有任何用于格式化日期/时间的内置库。因此,它需要您使用一个外部 jQuery 插件,这会给您的网站增加更多的臃肿,或者编写几十行 vanilla JavaScript 来完成您可以在 PHP 中用一行代码真正完成的事情。

<div><?php echo date('jS F Y'); ?></div>
于 2013-08-23T18:15:06.310 回答
0

如前所述:jQuery 没有提供任何开箱即用的有用的与日期相关的功能,只是为了搞笑,这里有一个合适的 javascript 替代方案。

<!DOCTYPE html>
<div class="myHeader">
  <div id="myDate"></div>
</div>

<script>
(function(){

    var d = new Date;
    var myDateFormat = d.getDate()
        + (['st','nd','rd'][(d.getDate()+'').substr(-1)-1] || 'th') + ' '
        + ['January', 'February', 'March', 'April', 'May', 'June', 'July',
            'August', 'September', 'October', 'November', 'December'
        ][d.getMonth()] + ' ' + d.getFullYear();
    document.getElementById('myDate').innerHTML = myDateFormat;

})();
</script>

我觉得有必要打一点高尔夫球,然后把它挤成几行来与 PHP 进行比较。


还应该注意,除非您通过声明时区或应用偏移量来指定,否则 PHP 可能会打印服务器的时间。同样,javascript Date对象将返回本地机器上的时间 - 除非您通过 UTC 函数另行指定。即您希望显示谁的时间?

于 2013-08-23T18:43:41.257 回答