【问题标题】:Conversion from unix timestamp to local time [duplicate]从unix时间戳到本地时间的转换[重复]
【发布时间】:2015-12-30 06:17:35
【问题描述】:

我需要将存储在数据库中的 unix 时间戳转换为 Y-m-d H:i:s 格式的本地时区(美国、新加坡等)。

$selectedTime 是从 DB 返回的 Unix 时间戳。

$timezone_name 是 jquery 动态返回的时区。

function draw_date_time_form($selectedTime = '',$timezone_name){

   $date = new DateTime(null);

    if( is_numeric($selectedTime) && (int)$selectedTime == $selectedTime ){
         $date->setTimestamp($selectedTime);
         $date->setTimezone(new DateTimeZone($timezone_name));

                 $formattedtime= $date->format(DateTime::RFC850);
        }

        }

我在服务器默认时区集中获取本地时间 $formattedtime。 谁能帮我找到更好的解决方案?

【问题讨论】:

    标签: php


    【解决方案1】:

    您的请求的基本示例:

    $timestamp = 1371278212;
    $timezone = "UTC";
    $dt = new DateTime();
    $dt->setTimestamp($timestamp);
    $dt->setTimezone(new DateTimeZone($timezone));
    $datetime = $dt->format('Y-m-d H:i:s');
    

    【讨论】:

      【解决方案2】:

      试试这个 ::

      function draw_date_time_form($selectedTime = '',$timezone_name){
      
         $date = new DateTime();
      
          if( is_numeric($selectedTime) && (int)$selectedTime == $selectedTime ){
               $date->setTimestamp($selectedTime);
               $date->setTimezone(new DateTimeZone($timezone_name));
      
                       $formattedtime= $date->format("Y-m-d H:i:s");
              }
      
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-08-07
        • 2020-02-02
        • 1970-01-01
        • 1970-01-01
        • 2013-12-14
        相关资源
        最近更新 更多