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

将美国日期格式转换为ANSI SQL日期格式(yyyy-mm-dd)

  •  3
  • George  · 技术社区  · 16 年前

    我想将用户提交的日期格式(mm/dd/yyyy)转换为mysql日期格式(yyyy-mm-dd)。提交是通过一个简单的php表单direc到mysql数据库。

    3 回复  |  直到 11 年前
        1
  •  10
  •   Paolo Bergantino    16 年前
    $mysql_date = date('Y-m-d H:i:s', strtotime($user_date));
    
        2
  •  0
  •   John Conde    12 年前

    php 5.2中的另一种方法

    $datetime = new DateTime($user_date);
    echo $datetime->format('Y-m-d H:i:s');
    

    DateTime 是Y38K和时区友好。

        3
  •  0
  •   Simeon    11 年前

    另一种方法,这次在sql端是在sql查询中使用convert方法:

        CONVERT(VARCHAR(11),$user_date,111)
    
        //e.g.
        SELECT CONVERT(VARCHAR(11),DATEFIELD,111) AS DATE
        //or
        SET DATEFIELD = CONVERT(VARCHAR(11),'".$user_date."',111)
    

    见: http://www.w3schools.com/sql/func_convert.asp -结尾的数字改变了日期格式的类型,111返回:2006/12/30。

    推荐文章