程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> PHP的日期時間運算總結

PHP的日期時間運算總結

編輯:PHP綜合

<?PHP
//GB2312的Encode
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);

/*重點了解strtotime()函數
1、strftime比time()好用,可以直接把常用的’2010-02-03‘轉成時間戳。
2、date()可以顯示1970年前的時間。而不必用負數做參數2
3、日期計算可以用時間戳來中轉。計算兩個日期相差的天數,可以取得相差的時間戳後除以“24小時*60分*60”秒來得到,但用strtotime()更簡潔、
4、了解用PEAR創建日歷。這裡略去。
知識點:網絡上有關於date('Y-m-d',-800)來計算1970年前的時間,但WINDOW系統不支持負值,因此總會返回1970-1-1子夜。
*/

#PHP5必須先設置默認區。
date_default_timezone_set('ETC/GMT-8');
$nowdate='2010-02-23';
$lassdate = '2010-02-22';

echo 'strftime()函數輸出的'.strftime('%Y-%m-%d %H:%M:%S',time()).'<br />';
echo 'date()函數輸出的'.date('Y-m-d H:i:s',time()).'<br />';
//檢查日期:boolean checkdate(int month,int day,int year)
$d='2010-2-31';
echo $d.'是'.(checkdate(2,31,2010)?'有效日期!':'無效日期!').'<br />';


//確定當月天數
echo '本月有'.date('t',time()).'天<br />'; //28天
//確定任意給定的月份的天數
$d='2008-02-01'; //閏年,或$d='2008-02';不需要輸入天也可以
$d=strtotime($d);
echo '2008年2月有'.date('t',$d).'天<br />'; //29天

$d=getdate();
echo '<pre>';
print_r($d);
echo '</pre>';
/*Array(
    [seconds] => 42
    [minutes] => 16
    [hours] => 13
    [mday] => 23
    [wday] => 2
    [mon] => 2
    [year] => 2010
    [yday] => 53
    [weekday] => Tuesday
    [month] => February
    [0] => 1266902202
)
*/

//echo date("Y-m-d H:i:s",-8000);
//setlocale(LC_ALL,'zh_CN.gb2312'); //setlocale函數對下面的沒有影響。
#測試strftime,mktime函數。
echo strftime('今天是:%Y-%m-%d %H:%M:%S').'<br />';
echo strtotime('now').'<br />'; // 等於time(),但strtotime使用范圍更靈活,參下文.
echo '測試還原昨天

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved