我想用$time
和javascript时间
代码
<?php
$today = date('Y-m-d');
$time = date('H:i:s');
$current = strtotime($today);
$final = date("d/Y/m", strtotime("-2 month", $current));
echo $final.'<br />';
echo $today.'<br />';
echo $time;
?>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Date();
</script>
他们显示不同的时间
22/2015/03
2015-05-22
02:56:22
Fri May 22 2015 10:56:22 GMT+0800 (Malay Peninsula Standard Time)
我指的是不同的时间,并且正在使用我的http://localhost
。
为什么这两次不同?
答案 0 :(得分:1)
通常答案只是PHP是服务器端而JS是客户端这一事实,两个时区通常不同,但你提到这是在你的if (date_default_timezone_get()) {
echo 'date_default_timezone_set: ' . date_default_timezone_get() . '<br />';
}
if (ini_get('date.timezone')) {
echo 'date.timezone: ' . ini_get('date.timezone');
}
,所以对这种差异的解释在于为您的PHP配置保存了一个默认时区,与您自己的时区不同。您可以使用
IndexOptions Type=text/plain
<强> Reference 强>
当您运行该代码时,您将看到PHP告诉您的时区不是您客户端上的时区。您可以使用 date_default_timezone_set 以及其他方法匹配这两者。
答案 1 :(得分:0)
PHP的日期函数格式化日期/时间。 Date()是一个JavaScript对象。
http://php.net/manual/en/function.date.php https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date
PHP日期将反映服务器的日期,JavaScript日期将反映客户端/浏览器的日期。
区域设置也可能会有所不同并影响演示。 http://en.wikipedia.org/wiki/Locale
答案 2 :(得分:0)
这里有两件事你需要考虑。
1.Php执行的返回时间或根据时区的时间如果与日期功能一起使用,则意味着您可以使用php日期功能并根据您的要求获取时间。
2.但是在javascript的情况下,除非您使用getTimezoneOffset
现在满足您的要求如果您希望在demo
div中添加相同的时间,您可以使用php日期函数和javascript
所以它可以像
那样完成<script>
document.getElementById("demo").innerHTML = '<?php echo date("m d y");?>';
</script>
或使用您已有的日期和时间变量