【问题标题】:PHP: splitting the date and time within a timestamp value in mysqlPHP:在mysql中的时间戳值内分割日期和时间
【发布时间】:2013-01-05 14:33:03
【问题描述】:

我在数据库表中有一个名为“timestamp”的字段,它以这种格式存储值:- YYYY-MM-DD HH:MM:SS。

我想分开,然后在一个变量中获取日期 (YYYY-MM-DD) 以及另一个变量中的时间 (HH:MM:SS)。示例:

$timestamp = "2012-10-19 18:19:56";
$get_date = "2012-10-19";
$get_time = "18:19:56";

如果有人可以使用 php 帮助解决这个问题,我会很高兴。

【问题讨论】:

    标签: php mysql date datetime


    【解决方案1】:

    检查这个 PHP 小提琴:

    http://phpfiddle.org/lite?code=%3C?php\n\n$d​​atetime%20=%20%2228-1-2011%2014:32:55%22;\nlist($date,%20$time)=explode(%27%20 %27,%20$datetime);\n\n//%20check%20the%20result\necho%20%22date:%22.%20$date;\necho%20%22%3Cbr%3Etime:%22. %20$time;\n\n//%20further%20more%20you%20can%20easy%20split%20the%20date%20into\n//%20year%20month%20and%20day\nlist($year,%20$月,%20$day)=explode(%27-%27,%20$date);\n\n?%3E\n

    【讨论】:

      【解决方案2】:

      您可以简单地这样做,而不是爆炸。这将对您拥有的任何格式有所帮助。

      echo $timestamp = "2012-10-19 18:19:56";
      echo '<br>';
      echo $data = date('Y-m-d',strtotime($timestamp));
      echo '<br>';
      echo $time = date('H:i:s',strtotime($timestamp));
      

      输出

      2012-10-19 18:19:56
      2012-10-19
      18:19:56
      

      【讨论】:

        【解决方案3】:

        您可以使用explode 函数;加上list 函数可以让你的代码稍微短一些:

        list($get_date, $get_time) = explode(" ", "2012-10-19 18:19:56");
        var_dump($get_date, $get_time);
        

        【讨论】:

          【解决方案4】:

          您可以使用 PHP 的 explode() function 简单地用空格字符分割字符串 -

          $timestamp = "2012-10-19 18:19:56";
          $splitTimeStamp = explode(" ",$timestamp);
          $date = $splitTimeStamp[0];
          $time = $splitTimeStamp[1];
          

          另一种方法是使用strtotime() 结合date()-

          $date = date('Y-m-d',strtotime($timestamp));
          $time = date('H:i:s',strtotime($timestamp));
          

          【讨论】:

            【解决方案5】:

            很简单,用explode,下面试试这个就行了

            $new_time = explode(" ",$timestamp);
            $get_date = $new_time[0];
            $get_time = $new_time[1];
            

            【讨论】:

              【解决方案6】:
              $timestamp = "2012-10-19 18:19:56";
              
              $splits =  explode(" ",$timestamp);
              
              $get_date = $splits[0];
              
              $get_time = $splits[1];
              

              【讨论】:

                猜你喜欢
                • 2013-06-16
                • 1970-01-01
                • 1970-01-01
                • 2011-03-20
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多