在php中的日期和时间格式中,计时不正确

在php中的日期和时间格式中,计时不正确,php,Php,使用此函数获取日期n时间时: date("d-M-Y h:i A"); 它给出了错误的时间。 当前正确的时间是下午4:30,但我的功能显示为上午11:00。 这意味着提前5.30小时。 请帮助我获取正确的时间。如果使用localhost,请在php.ini文件中更改时区 或尝试以下方法: <?php $timezone = new DateTimeZone("Asia/Kolkata" ); $date = new DateTime(); $date->setTimezo

使用此函数获取日期n时间时:

date("d-M-Y h:i A");
它给出了错误的时间。 当前正确的时间是下午4:30,但我的功能显示为上午11:00。 这意味着提前5.30小时。
请帮助我获取正确的时间。

如果使用localhost,请在php.ini文件中更改时区

尝试以下方法:

<?php
  $timezone = new DateTimeZone("Asia/Kolkata" );
  $date = new DateTime();
 $date->setTimezone($timezone );
 echo  $date->format( 'H:i:s A  /  D, M jS, Y' );
?>

有两种可能的原因

1) 时区。 2) 服务器时间

这些事实上是相关的


检查服务器时间(即运行代码的机器上的系统时间)。如果不正确;修好它。如果它是正确的,那么还要检查时区,并将其与php端的默认时区进行对比。

似乎您得到的是UTC时间,而不是您的时区(从GMT开始为+5:30)。(这可能是因为您的默认时区可以设置为UTC)

试试这个:

date_default_timezone_set('GMT');
$temp= strtotime("+5 hours 30 minutes"); 
$date = date("Y-m-d H:i:s",$temp);
echo $date;

根据你的用户名,我想你是印度人

所以把
date\u default\u timezone\u set(“亚洲/加尔各答”)

就在<代码>日期之前(“d-M-Y h:IA”)


您是否在php.ini和/或DateTime对象中设置了时区?我已经在localhost和服务器上进行了检查。但是显示错误的时间。可能的原因是什么?@atultyagi您是否使用了存储时间的变量?
$offset= strtotime("+5 hours 30 minutes"); 
$date = date("Y-m-d H:i:s",$offset);