1. 论坛系统升级为Xenforo,欢迎大家测试!
    Dismiss Notice

问一个关于 PHP 中日期函数的问题

Discussion in '后端开发' started by 不学无术, May 29, 2009.

  1. 不学无术

    不学无术 Ulysses 的元神

    Joined:
    Aug 31, 2005
    Messages:
    16,714
    Likes Received:
    39
    MySQL 中取出的数据格式是例如 2009-05-29 11:08:46 这样的日期时间格式,使用 date() 函数格式化:

    PHP:
    echo date('m-d'$post->post_date);
    为什么全部记录显示出来都是 01-01 呢?

    如果直接:

    PHP:
    echo $post->post_date;
    得到的就是 2009-05-29 11:08:46 这样的,不同记录显示的都是正确的时间。

    如果我要得到 mm-dd 这样的格式,该如何使用 date() 函数呢?

    谢谢!
     
  2. A君

    A君 Well-Known Member

    Joined:
    Aug 31, 2005
    Messages:
    19,987
    Likes Received:
    98
    在这问,不如点对点直接问人。
     
  3. webren

    webren New Member

    Joined:
    Sep 6, 2008
    Messages:
    2,934
    Likes Received:
    0
    'm-d' 代表的是月-日
     
  4. 小叶

    小叶 New Member

    Joined:
    Sep 4, 2005
    Messages:
    17,941
    Likes Received:
    33
    不建议直接存储日期,还不如用MYSQL存储Unix的时间戳,直接用int(11)
    你要得到mm-dd,你可以用
    date('m-d', strtotime($post->post_date)); 其实就是多次一举,用了一次日期的格式化。
     
  5. fyfei

    fyfei New Member

    Joined:
    Oct 7, 2005
    Messages:
    9,067
    Likes Received:
    46
    时间戳还是比较安全的
     
  6. 不学无术

    不学无术 Ulysses 的元神

    Joined:
    Aug 31, 2005
    Messages:
    16,714
    Likes Received:
    39
    谢谢两位,因为是直接修改 Wordpress 的程序,所以我还不至于去修改数据库结构。

    :)
     
  7. junp

    junp New Member

    Joined:
    Nov 6, 2005
    Messages:
    1,259
    Likes Received:
    4
    如果可以操作SQL语句,可以用DATE_FORMAT函数。