【问题标题】:Date String from php to postgresql从 php 到 postgresql 的日期字符串
【发布时间】:2013-08-19 13:35:04
【问题描述】:

我的客户用如下日期字符串证明我

Tue Nov 30 00:00:00 GMT+0400 1965

请问我怎样才能将这种格式插入到 postgresql 日期列中,或者我将不得不这样做并使用子字符串来编译一个字符串

Nov 30 1965

请有人帮助我时间很紧。

提前致谢。

【问题讨论】:

    标签: php postgresql-9.2


    【解决方案1】:

    如果您的日期中没有时间戳,这对您来说是可能的:

    select to_timestamp('Tue Nov 30 00:00:00 1965', 'DY Mon DD HH24:MI:SS YYYY')
    

    所以我认为你必须从你的字符串中创建一个新的:

    select
        to_timestamp(substring(dt from 0 for 20) || substring(dt from 29), 'DY Mon DD HH24:MI:SS YYYY')
    from (select 'Tue Nov 30 00:00:00 GMT+0400 1965'::text as dt) as a
    

    sql fiddle demo

    【讨论】:

      【解决方案2】:

      我是这样管理的

      function dateStringToDb($dateString){
          if($dateString != NULL){
              $dateString = substr($dateString,4,6)." ".substr($dateString,sizeof($dateString)-5,4);
              return new Zend_Db_Expr("to_date('".$dateString."', 'Mon DD YYYY')");
          }
          return NULL;
      }
      

      这似乎是最好的方法,无论如何谢谢

      【讨论】:

        猜你喜欢
        • 2015-12-28
        • 2014-02-21
        • 1970-01-01
        • 2022-01-13
        • 1970-01-01
        • 2023-03-16
        • 1970-01-01
        • 2013-07-06
        相关资源
        最近更新 更多