[英]How to set time zone by default in php?
date_default_timezone_set('Asia/Kolkata');
$x ='2016-03-15';
echo date("j M [D] Y",$x);
但是當我運行這段代碼時,它顯示錯誤的輸出:1970 年 1 月 1 日 [星期四]
我希望輸出如下:2015 年 3 月 15 日 [星期二]。
請幫助我,這段代碼有什么問題。
您的問題標題具有誤導性,您的時區設置很好。 日期顯示不是。
date
期望第二個(可選)參數是 Unix 時間戳,而不是日期。 首先將您的日期轉換為 unix 時間戳。
echo date("j M [D] Y",strtotime($x));
這可以在手冊上看到
字符串日期(字符串 $format [, int $timestamp = time() ] )
您誤用了date函數:第二個參數必須是timestamp ,而不是字符串。
參考: http : //php.net/manual/en/function.date.php
為了從日期中獲取時間戳,您可以使用mktime或strtotime函數。
strtotime — 將任何英文文本日期時間描述解析為 Unix 時間戳
date_default_timezone_set('Asia/Kolkata');
$x ='2016-03-15';
echo date("j M [D] Y",strtotime($x));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.