<?php /** * 日期 */ //驗(yàn)證日期checkdate()函數(shù)能很好地驗(yàn)證日期,,如果提供的日期有效,則返回true,,否則返回false,。 echo checkdate(2, 21, 2008); //返回1 .三個(gè)參數(shù) 1:月 2:日 3:年 echo '<br/>'; if (checkdate(4, 24, 2010)){ echo '日期合法'; }else { echo '日期不合法'; } echo '<br/>'; //格式化時(shí)間和日期date():函數(shù)返回根據(jù)預(yù)定義指令格式化時(shí)間和日期的字符串形式。重點(diǎn) echo date('Y'); //表示四位數(shù)的年 如:2011 echo '<br/>'; echo date('m'); //表示兩位數(shù)的月份 如:09 echo '<br/>'; echo date('d'); //表示兩位數(shù)的日 如:23 echo '<br/>'; //時(shí),、分,、秒 echo '<br/>'; //默認(rèn)的東八區(qū),有8個(gè)小時(shí)的時(shí)差 echo date('H'); //小時(shí) echo '<br/>'; echo date('i'); //分 echo '<br/>'; echo date('s'); //秒 echo '<br/>'; echo date('時(shí)間戳是:U');//返回時(shí)間戳 echo '<br/>'; // print '<br/>'; echo date('現(xiàn)在的時(shí)間是:Y--m--d H:m:s'); echo '<br/>'; //getdate():將時(shí)間戳轉(zhuǎn)換成友好的值,,該函數(shù)接受一個(gè)時(shí)間戳,,并返回一個(gè)由其各部分組成的關(guān)聯(lián)數(shù)組。如果不給參數(shù),,則返回當(dāng)前時(shí)間和日期,。 print_r(getdate());//通過它??梢圆榭吹綌?shù)組的下標(biāo)名 echo '<br/>'; $t = getdate(); echo $t['year']; //下標(biāo)名,,需要參照數(shù)組中的結(jié)果 echo '<br/>'; //傳遞一個(gè)時(shí)間戳的方式 print_r(getdate(1184557366)); //date()函數(shù)第二個(gè)參數(shù)就是時(shí)間戳,如果第二個(gè)參數(shù)省略了,,那么就返回當(dāng)前時(shí)間,。否則就返回第二個(gè)參數(shù)值對(duì)應(yīng)的時(shí)間 //也可以將時(shí)間戳轉(zhuǎn)換成想要的日期格式 echo date('Y-m-d H:i:s',1184557366); echo '<br/>'; // gettimeofday():取得當(dāng)前時(shí)間的時(shí)間戳,并以數(shù)組的形式返回 print_r( gettimeofday()); //直接獲取當(dāng)時(shí)時(shí)間戳 echo '<br/>'; echo time(); echo '<br/>'; //time()函數(shù)非常有用,,可以用來(lái)調(diào)整時(shí)差.并可設(shè)置過去,、現(xiàn)在、將來(lái) echo date('Y-m-d H:i:s',time()+(60*60*8));//可以解決東八區(qū)的時(shí)差問題 echo '<br/>'; //獲取特定指定時(shí)間的時(shí)間戳,。比如:2009-10-23 10:12:21 echo mktime(10,12,21,10,23,2009); //通過date()函數(shù)驗(yàn)證上面的函數(shù)是否正確,。將它還原回去看看 echo '<br/>'; echo date('Y-m-d H:i:s',1256292741); echo '<br/>'; //使用時(shí)間戳計(jì)算時(shí)間差。mktime()該函數(shù)不太好用,。 $now = time(); $wnow = mktime(0,0,0,16,8,2012); //兩個(gè)時(shí)間戳相減,,得到秒數(shù)。 echo '兩個(gè)時(shí)間戳相減,,得到秒數(shù):'; echo $wnow-$now; echo '<br/>'; echo '得到小時(shí):'; echo ($wnow-$now)/60/60; //得到小時(shí) echo '<br/>'; echo '將得到的小時(shí),,進(jìn)行四舍五入,并保留小數(shù)點(diǎn)2位'; echo round(($wnow-$now)/60/60,2);//將得到的小時(shí),,進(jìn)行四舍五入 echo '<br/>'; //將人們可讀的時(shí)間,字符串形式,,轉(zhuǎn)換成時(shí)間戳 echo '將人們可讀的時(shí)間以字符串形式轉(zhuǎn)換成時(shí)間戳,,更人性化:'; echo strtotime('2010-9-16 13:21:55'); echo '<br/>'; //獲取當(dāng)前文件最后修改時(shí)間:getlastmod()可以得到當(dāng)前文件最后修改時(shí)間的時(shí)間戳 echo '最后修改文件的時(shí)間為:'; echo date('Y-m-d H:i:s',getlastmod()); echo '<br/>'; //1.設(shè)置時(shí)區(qū)和GMT/UTC。修改php.ini文件中的位置,,找到[date]下的;date.timezone=選項(xiàng),,將該項(xiàng)修改為date.timezone=Asia/Shanghai,然后重新啟動(dòng)Apache服務(wù)器。 //2.也可以使用putenv()函數(shù)設(shè)置當(dāng)前的默認(rèn)時(shí)區(qū),。 echo '顯示相差8小時(shí)的時(shí)間'; echo date('Y-m-d H:i:s'); //顯示相差8小時(shí) echo '<br/>'; //通過設(shè)置時(shí)區(qū) echo '通過設(shè)置時(shí)區(qū)的方式,,來(lái)顯示正常的時(shí)間(不會(huì)有時(shí)區(qū)差別):'; putenv('TZ=Asia/Shanghai');//會(huì)改變整個(gè)系統(tǒng)的環(huán)境變量,會(huì)影響到下面的配置,。如需測(cè)試,,請(qǐng)把該行注釋 echo date('Y-m-d H:i:s'); echo '<br/>'; //重點(diǎn)推薦下面兩個(gè)函數(shù)來(lái)操作時(shí)區(qū) echo '獲取當(dāng)時(shí)的時(shí)區(qū):'; echo date_default_timezone_get(); //如果注釋103行,則結(jié)果為UTC echo ',。 '; echo '在當(dāng)前的時(shí)區(qū)環(huán)境下輸出日期日間:'; echo date('Y-m-d H:i:s'); echo '<br/>'; echo '開始配置默認(rèn)時(shí)區(qū):'; date_default_timezone_set('Asia/Shanghai'); echo date('Y-m-d H:i:s'); echo '<br/>'; //localtime():可以取得本地時(shí)間數(shù)據(jù),,然后返回一個(gè)數(shù)組 date_default_timezone_set('Asia/Shanghai'); print_r (localtime(time(),true)); echo '<br/>'; //microtime():返回時(shí)間戳和微秒數(shù),并不是返回?cái)?shù)組,。用來(lái)計(jì)算頁(yè)面腳本的運(yùn)行時(shí)間 //算法:用頁(yè)面結(jié)束是的時(shí)間減去頁(yè)面打開時(shí)的時(shí)間 list($a,$b)=explode(' ', microtime()); echo $a; echo '<br/>'; echo $b; echo '<br/>'; //計(jì)算頁(yè)面運(yùn)行時(shí)間 //算法:用頁(yè)面加載結(jié)束時(shí)間減去頁(yè)面加載時(shí)的時(shí)間 function microtime_float()//定義計(jì)算時(shí)間的函數(shù) { list($a, $b) = explode(" ", microtime());//以空格分開 return ((float)$a + (float)$b); } $time_start = microtime_float();//定義頁(yè)面加載時(shí)的時(shí)間 echo '輸出加載時(shí)間:'; echo $time_start; echo '<br/>'; for ($i=0;$i<1000000;$i++){ //執(zhí)行for循環(huán) } $time_end = microtime_float();//定義頁(yè)面加載結(jié)束的時(shí)間 echo '輸出頁(yè)面結(jié)束時(shí)間:'; echo $time_end; echo '<br/>'; $time = $time_end - $time_start; echo '頁(yè)面運(yùn)行時(shí)間為:'."$time"; ?> |
|
來(lái)自: 英昌知識(shí)匯聚館 > 《php》