1樓:匿名使用者
php5版本開始,獲取系統時間時,時間比當前實際時間少8個小時。原因是php.ini中沒有設定時區時,預設使用的是utc時間,所以在中國時間要少8小時。因此要加8小時。
//解決方案:
1.在php.ini檔案中修改設定北京時間。
date.timezone = asia/shanghai2.在php程式中設定。
<?php
date_default_timezone_set("asia/shanghai");
?>
3.在使用時間時多加8*3600秒(也就是8小時)<?php
echo date("y-m-d h:i:s",time()+8*3600);
?>
//以上3種方法根據自己情況,靈活使用
2樓:什猴祕
php上是格林威治標準時間,和北京時間正好差8個小時,所以要加
3樓:匿名使用者
意思是生成 $rs->post_time8小時之後的時間
例如$rs->post_time是中午12點
那麼這句執行之後就是晚上8點
4樓:幸馳皓
中國的時區相差8小時,所以需要加,這樣才是中國北京時間
php時間顯示:echo date("y-m-d h:i:s"),總顯示的時間不對,就是h部分不對?
5樓:陽光上的橋
修改抄襲php.ini,增
加下bai面的du內zhi
容:dao
[date]
; defines the default timezone used by the date functions
date.timezone = asia/chongqing
6樓:匿名使用者
時區問題
在php.ini 裡修改
或者在檔案的開頭 加入
ini_set("date.timezone","asia/chongqing");
7樓:崔兆運
時區的問題,誰讓寫php的人不是東八區的呢 ,一樓正解
8樓:
@ini_set("date.timezone", "asia/shanghai");
php時間問題?mysql資料庫的時間格式(y-m-d h:i:s) 在php頁面想這樣顯示(y-m-d) ('.$rows['ndate'].')
9樓:設計複雜
1、首先在電腦上建立一個index.php檔案,編輯index.php。
2、然後輸入獲取當天零點的時間戳,輸入**$today = strtotime(date("y-m-d"),time());$time = strtotime($today);//獲取到echo $time."
";//輸出。
3、獲取當天24點的時間戳$todayend = $today+60*60*24;//家一天的時間echo $time = strtotime($todayend)."
";//輸出。
4、獲取前一天時間echo date("y-m-d h:i:s",strtotime("-1 days"));。
5、以上即時間戳和前一天時間的獲取。主要是對date()和strtotime()函式的靈活使用,就可以了。
10樓:冷鋒雲
參考一下看看
php的日期時間函式date()
1,年-月-日
echo date('y-m-j');
2007-02-6
echo date('y-n-j');
07-2-6
大寫y表示年四位數字,而小寫y表示年的兩位數字;
小寫m表示月份的數字(帶前導),而小寫n則表示不帶前導的月份數字。
echo date('y-m-j');
2007-feb-6
echo date('y-m-d');
2007-02-06
大寫m表示月份的3個縮寫字元,而小寫m則表示月份的數字(帶前導0);
沒有大寫的j,只有小寫j表示月份的日期,無前導o;若需要月份帶前導則使用小寫d。
echo date('y-m-j');
2007-feb-6
echo date('y-f-js');
2007-february-6th
大寫m表示月份的3個縮寫字元,而大寫f表示月份的英文全寫。(沒有小寫f)
大寫s表示日期的字尾,比如「st」、「nd」、「rd」和「th」,具體看日期數字為何。
小結:表示年可以用大寫的y和小寫y;
表示月可以用大寫f、大寫m、小寫m和小寫n(分別表示字元和數字的兩種方式);
表示日可以用小寫d和小寫j,大寫s表示日期的字尾。
2,時:分:秒
預設情況下,php解釋顯示的時間為「格林威治標準時間」,與我們本地的時間相差8個小時。
echo date('g:i:s a');
5:56:57 am
echo date('h:i:s a');
05:56:57 am
小寫g表示12小時制,無前導0,而小寫h則表示有前導0的12小時制。
當使用12小時制時需要表明上下午,小寫a表示小寫的「am」和「pm」,大寫a表示大寫的「am」和「pm」。
echo date('g:i:s');
14:02:26
大寫g表示24小時制的小時數,但是不帶前導的;使用大寫的h表示帶前導的24小時制小時數
小結:字母g表示小時不帶前導,字母h表示小時帶前導;
小寫g、h表示12小時制,大寫g、h表示24小時制。
3,閏年、星期、天
echo date('l');
今年是否閏年:0
echo date('l');
今天是:tuesday
echo date('d');
今天是:tue
大寫l表示判斷今年是否閏年,布林值,為真返回1,否則為0;
小寫l表示當天是星期幾的英文全寫(tuesday);
而使用大寫d表示星期幾的3個字元縮寫(tue)。
echo date('w');
今天星期:2
echo date('w');
本週是全年中的第 06 周
小寫w表示星期幾,數字形式表示
大寫w表示一年中的星期數
echo date('t');
本月是 28 天
echo date('z');
今天是今年的第 36 天
小寫t表示當前月份又多少天
小寫z表示今天是本年中第幾天
4,其他
echo date('t');
utc大寫t表示伺服器的時間區域設定
echo date('i');
0大寫i表示判斷當前是否為夏令時,為真返回1,否則為0
echo date('u');
1170769424
大寫u表示從2023年1月1日到現在的總秒數,就是unix時間紀元的unix時間戳。
echo date('c');
2007-02-06t14:24:43+00:00
小寫c表示iso8601日期,日期格式為yyyy-mm-dd,用字母t來間隔日期和時間,時間格式為hh:mm:ss,時區使用格林威治標準時間(gmt)的偏差來表示。
echo date('r');
tue, 06 feb 2007 14:25:52 +0000
小寫r表示rfc822日期。
小小的date()函式就顯示出了php的強大功能和迷人魅力,再比較下asp,呵呵。
checkdate($month,$date,$year)
如果應用的值構成一個有效日期,則該函式返回為真。例如,對於錯誤日期2023年2月31日,此函式返回為假。
在日期用於計算或儲存在資料庫中之前,可用此函式檢查日期並使日期生效。
<?php
// returns false
echo checkdate(2,30,2005) ? "valid" : "invalid";
// returns true
echo checkdate(4,6,2010) ? "valid" : "invalid";
?>
getdate($ts)
在沒有自變數的情況下,該函式以結合陣列的方式返回當前日期與時間。陣列中的每個元素代表日期/時間值中的一個特定組成部分。可向函式提交可選的時間標籤自變數,以獲得與時間標籤對應的日期/時間值。
應用此函式來獲得一系列離散的,容易分離的日期/時間值。
<?php
// get date as associative array
$arr = getdate();
echo "date is " . $arr['mday'] . " " . $arr['weekday'] . " " . $arr['year'];
echo "time is " . $arr['hours'] . ":" . $arr['minutes'];
?>
mktime($hour, $minute, $second, $month, $day, $year)
此函式的作用與getdate()的作用相反:它由一系列的日期與時間值生成一個unix時間標籤(gmt時間2023年1月1日到現在消逝的秒數)。不用自變數時,它生成當前時間的unix時間標籤。
用此函式獲得即時時間的unix時間標籤。這種時間標籤通常用於許多資料庫與程式語言中。
<?php
// returns timestamp for 13:15:23 7-jun-2006
echo mktime(13,15,23,6,7,2006);
?>
date($format, $ts)
此函式將unix時間標籤格式化成一個可人為閱讀的日期字串。它是php日期/時間api中功能最為強大的函式,可用在一系列的修正值中,將整數時間標籤轉變為所需的字串格式。
為顯示格式化時間或日期時,應用此函式。
<?php
// format current date
// returns "13-sep-2005 01:16 pm"
echo date("d-m-y h:i a", mktime());
?>
strtotime($str)
此函式將可人為閱讀的英文日期/時間字串轉換成unix時間標籤。
應用此函式將非標準化的日期/時間字串轉換成標準、相容的unix時間標籤。
<?php
// returns 13-sep-05
echo date("d-m-y", strtotime("today"));
// returns 14-sep-05
echo date("d-m-y", strtotime("tomorrow"));
// returns 16-sep-05
echo date("d-m-y", strtotime("today +3 days"));
?>
strftime($format,$ts)
如前面的setlocale()函式定義的那樣,此函式將unix時間標籤格式化成適用於當前環境的日期字串。
應用此函式建立與當前環境相容的日期字串。
<?php
// set locale to france (on windows)
setlocale(lc_time, "fra_fra");
// format month/day names
// as per locale setting
// returns "septembre" and "mardi"
echo strftime("month: %b ");
echo strftime("day: %a ");
?>
microtime()
如前面的setlocale()函式定義的那樣,此函式將unix時間標籤格式化成適用於當前環境的日期字串。
應用此函式建立與當前環境相容的日期字串。
<?php
// get starting value
$start = microtime();
// run some code
for ($x=0; $x<1000; $x++)
// get ending value
$end = microtime();
// calculate time taken for code execution
echo "elapsed time: " . ($end - $start) ." sec";
?>
gmmktime($hour, $minute, $second, $month, $day, $year)
此函式由一系列用gmt時間表示的日期與時間值生成一個unix時間標籤。不用自變數時,它生成一個當前gmt即時時間的unix時間標籤。
用此函式來獲得gmt即時時間的unix時間標籤。
<?php
// returns timestamp for 12:25:23 9-jul-2006
echo gmmktime(12,25,23,7,9,2006);
?>
gmdate($format, $ts)
此函式將unix時間標籤格式化成可人為閱讀的日期字串。此日期字串以gmt(非當地時間)表示。
用gmt表示時間標籤時應用此函式。
<?php
// format current date into gmt
// returns "13-sep-2005 08:32 am"
echo gmdate("d-m-y h:i a", mktime());
?>
date_default_timezone_set($tz)、date_default_timezone_get()
此函式此後所有的日期/時間函式呼叫設定並恢復預設的時區。
注:此函式僅在php 5.1+中有效。
此函式是一個方便的捷徑,可為以後的時間操作設定時區。
<?php
// set timezone to utc
date_default_timezone_set('utc');
?>
<?php
//今天
$today = date("y-m-d");
//昨天
$yesterday = date("y-m-d", strtotime(date("y-m-d"))-86400);
//上週
$lastweek_start = date("y-m-d h:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1-7,date("y")));
$lastweek_end = date("y-m-d h:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7-7,date("y")));
//本週
$thisweek_start = date("y-m-d h:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1,date("y")));
$thisweek_end = date("y-m-d h:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7,date("y")));
//上月
$lastmonth_start = date("y-m-d h:i:s",mktime(0, 0 , 0,date("m")-1,1,date("y")));
$lastmonth_end = date("y-m-d h:i:s",mktime(23,59,59,date("m") ,0,date("y")));
//本月
$thismonth_start = date("y-m-d h:i:s",mktime(0, 0 , 0,date("m"),1,date("y")));
$thismonth_end = date("y-m-d h:i:s",mktime(23,59,59,date("m"),date("t"),date("y")));
//本季度未最後一月天數
$getmonthdays = date("t",mktime(0, 0 , 0,date('n')+(date('n')-1)%3,1,date("y")));
//本季度/
$thisquarter_start = date('y-m-d h:i:s', mktime(0, 0, 0,date('n')-(date('n')-1)%3,1,date('y')));
$thisquarter_end = date('y-m-d h:i:s', mktime(23,59,59,date('n')+(date('n')-1)%3,$getmonthdays,date('y')));
?>
摩爾是什麼意思?為什麼要這樣說?
摩爾 摩爾是表示物質的量的單位,每摩物質含有阿佛加德羅常數個微粒。摩爾簡稱摩,符號為mole。根據科學實驗的精確測定,知道12g相對原子質量為12的碳中含有的碳原子數約6.02 10 23。科學上把含有個微粒的集體作為一個單位,叫摩。摩爾是表示物質的量 符號是n 的單位,簡稱為摩,單位符號是mol。...
4S店是什麼意思,4S店是什麼意思?為什麼要去4S店買車?
熱詞替換 4s店是集整車銷售,售後服務,零配件,資訊反饋於一身的一站式服務!但是4s店是由投資人向廠商申請,廠商給予授權以後才可以運營的! 4s,是四個英文單詞的首寫字母。這四個以s開頭的英文單詞分別代表如下含義 整車銷售 sale 零配件 sparepart 售後服務 service 資訊反饋 s...
泡妞是什麼意思?為什麼要叫泡妞呢
就是指的和女人聊天,和女人談情說愛。 泡妞指的是男方對女方表示好感的一種行為方式。這個措辭最早來自於港臺,本來有一定的貶義。隨著近幾十年的發展,現在幾乎成了一箇中性片語。泡,一般指的是男方用討好 接近 言談等的方式對女性示好,以達到交友 戀愛 同居等目的。妞,指的是女子,而且一般都指的是年輕女子。 ...