echo date("Y-m-d H:i:s")."\n";echo date('Y-m-d G:i:s');--->2011-05-28 15:34:37
echo date("Y-m-d H:i:s",strtotime("-10 day"));//目前時間減10天2:函數: strtotime()
功能:將任何英文文本的時間轉換為UNIX時間戳記(從1970年1月1日(GMT)起經過的秒數),進行一些代數運算
echo(strtotime("now") . "<br />");
echo(strtotime("3 October 2005") . "<br />");
echo(strtotime("+5 hours") . "<br />");
echo(strtotime("+1 week") . "<br />");
echo(strtotime("+1 week 3 days 7 hours 5 seconds") . "<br />");
echo(strtotime("next Monday") . "<br />");
echo(strtotime("last Sunday"));
3:
函數: date()
顯示的格式: 年-月-日 小時:分鐘:秒
相關時間參數:
a – “am” 或是 “pm”
A – “AM” 或是 “PM”
d – 幾日,二位元字,若不足二位則前面補零; 如: “01″ 至 “31″
D – 星期幾,三個英文字母; 如: “Fri”
F – 月份,英文全名; 如: “January”
h – 12 小時制的小時; 如: “01″ 至 “12″
H – 24 小時制的小時; 如: “00″ 至 “23″
g – 12 小時制的小時,不足二位不補零; 如: “1″ 至 12″
G – 24 小時制的小時,不足二位不補零; 如: “0″ 至 “23″
i – 分鐘; 如: “00″ 至 “59″
j – 幾日,二位元字,若不足二位不補零; 如: “1″ 至 “31″
l – 星期幾,英文全名; 如: “Friday”
m – 月份,二位元字,若不足二位則在前面補零; 如: “01″ 至 “12″
n – 月份,二位元字,若不足二位則不補零; 如: “1″ 至 “12″
M – 月份,三個英文字母; 如: “Jan”
s – 秒; 如: “00″ 至 “59″
S – 字尾加英文序數,二個英文字母; 如: “th”,”nd”
t – 指定月份的天數; 如: “28″ 至 “31″
U – 總秒數
w – 數字型的星期幾,如: “0″ (星期日) 至 “6″ (星期六)
Y – 年,四位元字; 如: “1999″
y – 年,二位元字; 如: “99″
z – 一年中的第幾天; 如: “0″ 至 “365″
可以自由設定顯示的內容,串連符號或是顯示位置,例如 date(”m-d H”) 或者date(”dmY”);?>等php中的日
3:
1。 計算目前時間和昨日同時間段的資料問題此問題需要知道目前的時間,以及目前時間減去24後的時間
方法一: 使用time()和date()比如:$time=time();$tomorrow=time()+24*3600; //明日的同時間echo ‘ 4: ‘.date(‘Y:m:d H:i:s’,$tomorrow);
$yestoday=time()+24*3600; //昨日的同時間
echo ‘ 5: ‘.date(‘Y:m:d H:i:s’,$yestoday);
方法二:自己寫類其他語言的函數DateDiff()或者DateSubstact()
如:
function DateDiff ($interval, $date1,$date2)
{ // 得到兩日期之間間隔的秒數
$timedifference = strtotime($date2) – strtotime($date1);
switch ($interval) {
case “w”: $retval = bcdiv($timedifference ,604800); break;
case “d”: $retval = bcdiv( $timedifference,86400); break;
case “h”: $retval = bcdiv ($timedifference,3600); break;
case “n”: $retval = bcdiv( $timedifference,60); break;
case “s”: $retval = $timedifference; break;
}
return $retval;
}
function DateAdd ($interval, $number, $date)
{
$date_time_array = getdate($date);
$hours = $date_time_array["hours"];
$minutes = $date_time_array["minutes"];
$seconds = $date_time_array["seconds"];
$month = $date_time_array["mon"];
$day = $date_time_array["mday"];
$year = $date_time_array["year"];
switch ($interval) {
case “yyyy”: $year +=$number; break;
case “q”: $month +=($number*3); break;
case “m”: $month +=$number; break;
case “y”:
case “d”:
case “w”: $day+=$number; break;
case “ww”: $day+=($number*7); break;
case “h”: $hours+=$number; break;
case “n”: $minutes+=$number; break;
case “s”: $seconds+=$number; break;
}
$timestamp = mktime($hours ,$minutes, $seconds,$month ,$day, $year);
return $timestamp;}
使用方法:
Inetrval為表示要添加的時間間隔字串運算式,例如分或天;number為表示要添加的時間間隔的個數的數值運算式;Date表示日期。
Interval(時間間隔字串運算式)可以是以下任意值:
yyyy year年
q Quarter季度
m Month月
y Day of year一年的數
d Day天
w Weekday一周的天數
ww Week of year周
h Hour小時
n Minute分
s Second秒
w、y和d的作用是完全一樣的,即在目前的日期上加一天,q加3個月,ww加7天
我們可以將上面的代碼儲存為dateadd.inc檔案,然後運行以下代碼:
include('dateadd.inc');
$temptime = time();
echo ' 1: '.strftime( "%Y-%m-%d %H:%M:%S",$temptime);
$temptime = DateAdd("h" ,24,$temptime);
echo ' 2: '.strftime( "%Y-%m-%d %H:%M:%S",$temptime);
echo ' 3: '.date('Y:m:d H:i:s');
$time=time();
$tomorrow=time()+24*3600;
echo ' 4: '.date('Y:m:d H:i:s',$tomorrow);
$yestoday=time()+24*3600;
echo ' 5: '.date('Y:m:d H:i:s',$yestoday);
?>