如何在PHP中获得真实日期?

时间:2017-01-13 17:32:49

标签: php

如何从php获取真实日期。

我正在使用Date date();此函数返回系统日期。

无论用户计算机的日期如何,我都希望得到真实日期。

我们是否需要任何api来访问日期,或者我们是否有任何功能可以获取服务器的日期和时间?

3 个答案:

答案 0 :(得分:1)

您的问题似乎表明日期值的来源存在一些混淆。我会尽力为你澄清:

PHP代码在您的Web服务器上运行,因此当您调用date()时,DateTime会返回服务器上的当前日期。 (在我写完之后你添加了一条评论,澄清说这似乎是你混淆的根源:如果你在XAMPP中运行你的应用程序,那么你的本地机器就是你的服务器,所以更改时钟时间会更改date()

返回的值

如果您想知道客户端上的日期(用户与您的系统交互),并使该日期可用于您的PHP代码,您需要让客户端提交它,例如使用AJAX。

如果您想知道某个官方机构定义的日期,与服务器或您的用户的系统设置无关,您可以在http://nist.time.gov/actualtime.cgi向NIST发送请求。不过,我建议您只使用date()将服务器时间设置为准确,而不是在PHP代码中执行此操作。

答案 1 :(得分:0)

date函数返回服务器日期而不是访问者的本地日期

例如:

<?php
echo date('Y-m-d H:i:s');

http://ideone.com/cZ5wq3

答案 2 :(得分:0)

您可以根据您的要求根据时区获取服务器日期,如:

date_default_timezone_set('Australia/Melbourne');
$date = date('m/d/Y h:i:s a', time());  //returns date and time at Australia/Melbourne

同样适用于亚洲/加尔各答:

date_default_timezone_set('Asia/Kolkata');
echo $date = date('m/d/Y h:i:s a', time());

在此处获取所有时区:http://php.net/manual/en/timezones.asia.php