$timestamp = "20031210215130"; //不是时间戳

解决方案 »

  1.   

    在数据库中的timestamp类型,自动变为这样的格式,取出后即是如此,
    怎样格式化时间戳呢?
      

  2.   

    <?php
    $timestamp = "20031210215130"; 
    $timestamp = preg_replace("/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/","\\1-\\2-\\3 \\4:\\5:\\6",$timestamp); //格式化成标准日期格式
    $timestamp = strtotime($timestamp); //转化成unix时间戳
    ?>
      

  3.   

    用时间戳有些什么优点?
    我觉得转换应该方便点,可是这样又有些不方便了。
    能不能在数据库中直接生成unix时间戳?
      

  4.   

    字段类型设成:time char(10)
    得到时间戳:$Time=time();
    将$Time存入数据库;
    读出记录时:echo date("Y-m-d H:i:s', $Array[time]);
      

  5.   

    优点:用时间戳在往任何数据库中存放时可以放为字符串型的.取出时间时可以用date函数格式化成各种想要的格式.
    你存放的不是时间戳,而是一个时间.
    20031210215130
    2003年12月10日21时51分30秒
    直接用就是了
      

  6.   

    直接用?怎么格式化?比方我取出来了那个字符串20031210什么的, 怎么显示成你写的那样呢?
    xizi2002(戏子=>影帝)
      

  7.   

    是不是mysql装在unix上取出的就是unix的时间戳,而不是winnt上的这种表示方式?