PHP時間戳記函數_PHP教程

來源:互聯網
上載者:User
  1.PHP時間戳記函數將日期轉化為unix時間戳記

  世界末日時間戳記 PHP

代碼如下

echo "世界末日時間戳記為:".strtotime("2012-12-21")

  2.將時間戳記轉化為系統時間

代碼如下


date('Y-m-d H:i:s',"1228348800");

  3.PHP時間戳記函數擷取英文文本日期時間 樣本如下:

  便於比較,使用date將當時間戳記與指定時間戳記轉換成系統時間

  (1)列印明天此時的時間戳記strtotime(”+1 day”)

代碼如下

//目前時間
echo date("Y-m-d H:i:s",time());
//明天此時時間
echo date("Y-m-d H:i:s",strtotime("+1 day"));

  (2)列印昨天此時的時間戳記strtotime(”-1 day”)

代碼如下

//目前時間
echo date("Y-m-d H:i:s",time()) ;
//指定時間
echo date("Y-m-d H:i:s",strtotime("-1 day"));

  (3)列印下個星期此時的時間戳記strtotime("+1 week")

代碼如下


//目前時間
echo date("Y-m-d H:i:s",time());
//下星期時間
echo date("Y-m-d H:i:s",strtotime("+1 week"));

  (4)列印上個星期此時的時間戳記strtotime("-1 week")

代碼如下

//目前時間
echo date("Y-m-d H:i:s",time());
//上個星期此時時間
echo date("Y-m-d H:i:s",strtotime("-1 week"));

  (5)列印指定下星期幾的時間戳記strtotime("next Thursday")

代碼如下
//目前時間
echo date("Y-m-d H:i:s",time());
//下星期幾時間
echo date("Y-m-d H:i:s",strtotime("next Thursday"));

  (6)列印指定上星期幾的時間戳記strtotime(”last Thursday”)

代碼如下

//目前時間
echo date("Y-m-d H:i:s",time());
//指定時間
echo date("Y-m-d H:i:s",strtotime("last Thursday"));

  以上PHP時間戳記函數樣本可知,strtotime能將任何英文文本的日期時間描述解析為Unix時間戳記,我們結合mktime()或date()格式化日期時間擷取指定的時間戳記,實現所需要的日期時間

  話說看到別人寫的這麼一個函數,測試了一下,有些小毛病:對於跨年日期,沒有顯示年份。修改如下

代碼如下

function mdate($time = NULL) {
$text = '';
$time = $time === NULL || $time > time() ? time() : intval($time);
$t = time() - $time; //時間差 (秒)
$y = date('Y', $time)-date('Y', time());//是否跨年
switch($t){
case $t == 0:
$text = '剛剛';
break;
case $t < 60:
$text = $t . '秒前'; // 一分鐘內
break;
case $t < 60 * 60:
$text = floor($t / 60) . '分鐘前'; //一小時內
break;
case $t < 60 * 60 * 24:
$text = floor($t / (60 * 60)) . '小時前'; // 一天內
break;
case $t < 60 * 60 * 24 * 3:
$text = floor($time/(60*60*24)) ==1 ?'昨天 ' . date('H:i', $time) : '前天 ' . date('H:i', $time) ; //昨天和前天
break;
case $t < 60 * 60 * 24 * 30:
$text = date('m月d日 H:i', $time); //一個月內
break;
case $t < 60 * 60 * 24 * 365&&$y==0:
$text = date('m月d日', $time); //一年內
break;
default:
$text = date('Y年m月d日', $time); //一年以前
break;
}

return $text;
}

  ThinkPHP中:

  將寫好的函數放到 Common 檔案夾下。系統會自動載入的。

  放到這個common.php頁裡,common.php 固有格式,不要改名。

  模板中直接調用

代碼如下

{$vo.time|mdate}

  例2,簡單一些的

代碼如下

function formatDate($sTime) {
//sTime=源時間,cTime=目前時間,dTime=時間差
$cTime = time();
$dTime = $cTime - $sTime;
$dDay = intval(date("Ymd",$cTime)) - intval(date("Ymd",$sTime));
$dYear = intval(date("Y",$cTime)) - intval(date("Y",$sTime));
if( $dTime < 60 ){
$dTime = $dTime."秒前";
}elseif( $dTime < 3600 ){
$dTime = intval($dTime/60)."分鐘前";
}elseif( $dTime >= 3600 && $dDay == 0 ){
$dTime = "今天".date("H:i",$sTime);
}elseif($dYear==0){
$dTime = date("m-d H:i",$sTime);
}else{
$dTime = date("Y-m-d H:i",$sTime);
}
return $dTime;
}

http://www.bkjia.com/PHPjc/730235.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/730235.htmlTechArticle1.PHP時間戳記函數將日期轉化為unix時間戳記 世界末日時間戳記 PHP 代碼如下 echo 世界末日時間戳記為:.strtotime(2012-12-21) 2.將時間戳記轉化為系統時間...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.