date_default_timezone_set显示错误的时间

时间:2010-10-01 18:01:06

标签: php

我将以下内容上传到美国的服务器:

date_default_timezone_set('Asia/Calcutta'); 
echo date("Y-m-d H:i:s"); // time in India

显示的时间比印度的实际时间早15分钟。

我在这里做错了什么?什么代码将始终显示印度的时间精确到秒?

7 个答案:

答案 0 :(得分:23)

它的拼写错误应该是这样的

date_default_timezone_set('Asia/Kolkata');

答案 1 :(得分:4)

date_default_timezone_set('Asia/Kolkata');
$timestamp = date("Y-m-d H:i:s");

答案 2 :(得分:2)

这都与服务器上设置的时间有关。检查服务器上是否确实设置了正确的时间 - 也许它设置的时区是15分钟?

答案 3 :(得分:2)

我在本地xampp服务器上测试代码时遇到了同样的问题。这就是我所做的,将时区默认设置更改为php.ini文件。

  

date_default_timezone_set( '亚/加尔各答');

是的,同意,并非完全必要

然后,在我的config.php文件中声明date_default_timezone_set('Asia / Kolkata'),完全有必要将时区设置为您当地的时区。

即使在此之后,我的时间和日期相隔12小时,这是捕获,在检查我的Windows操作系统设置时,我发现我的系统时间设置错误。在纠正我的(Windows)操作系统时区时,一切都运行良好。

答案 4 :(得分:1)

它只是拼写错误,应该是这样

date_default_timezone_set('Asia/Kolkata');
$timestamp = date("Y-m-d H:i:s");

答案 5 :(得分:0)

$ab = date_default_timezone_get(); 
date_default_timezone_set($ab); 
echo date('dd-mm-Y H:i:s');

答案 6 :(得分:0)

<?php
                class datashow extends connection{
                    function __construct(){}
                    function showData($id){
                    $iddate=$_SESSION["datesession"];   
                    $qry = "SELECT * FROM data where EnNo='$id' group by Date order by Date DESC";
                    $qry1 = "SELECT * FROM data where EnNo='$id' order by Date DESC";
                    $row=mysqli_query($this->conn, $qry) or die ("query Failed...!");
                    $row1=mysqli_query($this->conn, $qry1) or die ("query Failed...!");
                        while($rec=mysqli_fetch_array($row)){
                            echo "<tr>";
                            echo "<td class='text-center'>".$rec['Date']."</td>";
                            while($rec1=mysqli_fetch_array($row1)){
                                $time1=$rec1["Time"];
                                $time = explode(':', $time1);
                                if($time[0] <= 12){
                                    echo "<td class='text-center' id='timeIn'>".$time[0].":".$time[1].":".$time[2]."</td>";
                                }
                                else if ($time[0] >= 12){
                                    echo "<td class='text-center' id='timeOut'>"."-"."</td>";
                                    echo "<td class='text-center' id='timeOut'>".$time[0].":".$time[1].":".$time[2]."</td>";
                                }
                                }
                                echo "</tr>";   
                            }
                        }
                    function __destruct(){}
                    }
                    if (isset($_REQUEST["btnsub"])){
                    $objcon = new datashow;
                    $objcon->setconnection();
                    $objcon->showData($_REQUEST["btnsub"]);
                    $objcon->CloseCon();
                    }
        ?>