当我使用以下函数获取日期n时间时:
date("d-M-Y h:i A");
它给出了错误的时间。目前的正确时间是下午4点30分,但我的功能显示为上午11点。这意味着提前5点30分。帮我找出正确的时间。
根据你的用户名,我认为你来自印度。
所以放date_default_timezone_set('Asia/Kolkata');
就在date("d-M-Y h:i A");
之前
或
$offset= strtotime("+5 hours 30 minutes");
$date = date("Y-m-d H:i:s",$offset);
可能有两个原因。
1) 时区。2) 服务器时间。
这些实际上是相关的。
检查服务器时间(即运行代码的机器上的系统时间)。如果不正确;修复它。如果它是正确的,那么也检查时区,并将其引用到php端的默认时区。
如果在localhost上工作,请在php.ini文件中更改时区。
OR
尝试以下方式:
<?php
$timezone = new DateTimeZone("Asia/Kolkata" );
$date = new DateTime();
$date->setTimezone($timezone );
echo $date->format( 'H:i:s A / D, M jS, Y' );
?>
您得到的似乎是UTC时间,而不是您的时区(即格林尼治标准时间+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;