印度的日期和时间在PHP

时间:2014-10-31 08:23:08

标签: php date

伙计们我想用PHP获得正确的印度时间和日期

我试过这段代码:

$date = date("d/m/Y");
$date1 =  date("H:i a");

if(function_exists('date_default_timezone_set'))
{
    date_default_timezone_set("Asia/Kolkata");
}

echo $date;
echo $date1;

但我没有得到正确的时间。我的时间已经过了4.30小时。我的代码中有错误吗?

5 个答案:

答案 0 :(得分:6)

在使用任何日期函数之前先放置时区声明:

// set the timezone first
if(function_exists('date_default_timezone_set')) {
    date_default_timezone_set("Asia/Kolkata");
}

// then use the date functions, not the other way around
$date = date("d/m/Y");
$date1 =  date("H:i a");

echo $date . '<br/>';
echo $date1;

答案 1 :(得分:2)

清洁选项是

$date = new DateTime(null, new DateTimezone("Asia/Kolkata"));
echo $date->format('d/m/y').'<br/>';
echo $date->format('H:i a');

这样,你就不会改变全局状态,所以代码的其他部分仍然可以使用其他时区

答案 2 :(得分:1)

<?php
date_default_timezone_set("Asia/Kolkata");
echo "The date is " .date("d/m/y"); 
echo "<br/>";
echo "The time is " . date("h:i:sa");
?>

答案 3 :(得分:0)

我认为你应该试试这个

date_default_timezone_set('Asia/Kolkata');
$date = date('Y-m-d H:i:s'); 什么样的格式你喜欢!!

答案 4 :(得分:0)

// set the timezone first
if(function_exists('date_default_timezone_set')) {
    date_default_timezone_set("Asia/Kolkata");
}

// then use the date functions, not the other way around
$date = date("d/m/Y");
$date1 =  date("H:i a");

echo $date . '<br/>';
echo $date1;