이 글은 주로 코드 형식으로 PHP 타임스탬프 기능에 대한 자세한 설명을 공유합니다.
echo "최후의 날 타임스탬프는 다음과 같습니다.".strtotime("2012-12-21")
2. 타임스탬프를 시스템 시간으로 변환
date('Y-m-d H:i:s',"1228348800");
(1) 오늘의 0시 타임스탬프 가져오기
$timetoday = strtotime(date("Y-m-d",time()));
(2) 내일 0시에 타임스탬프를 가져옵니다
$tomorrow = $timetoday + 3600*24;
3. 영어 텍스트 날짜와 시간을 가져오는 PHP 타임스탬프 함수의 예는 다음과 같습니다.
간단한 비교를 위해 날짜를 사용하여 현재를 변환합니다. timestamp 및 지정된 타임스탬프를 시스템 시간으로 인쇄
(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 목요일" )
//当前时间 echo date("Y-m-d H:i:s",time()); //下星期几时间 echo date("Y-m-d H:i:s",strtotime("next Thursday"));
(6) 지정된 요일의 타임스탬프를 인쇄합니다. strtotime("last 목요일")
//当前时间 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; }
다음은 모든 사람에게 시간 친화적인 방법입니다.
/** * 友好时间显示 * @param $time * @return bool|string */ function friend_date($time) { if (!$time) return false; $fdate = ''; $d = time() - intval($time); $ld = $time - mktime(0, 0, 0, 0, 0, date('Y')); //得出年 $md = $time - mktime(0, 0, 0, date('m'), 0, date('Y')); //得出月 $byd = $time - mktime(0, 0, 0, date('m'), date('d') - 2, date('Y')); //前天 $yd = $time - mktime(0, 0, 0, date('m'), date('d') - 1, date('Y')); //昨天 $dd = $time - mktime(0, 0, 0, date('m'), date('d'), date('Y')); //今天 $td = $time - mktime(0, 0, 0, date('m'), date('d') + 1, date('Y')); //明天 $atd = $time - mktime(0, 0, 0, date('m'), date('d') + 2, date('Y')); //后天 if ($d == 0) { $fdate = '刚刚'; } else { switch ($d) { case $d < $atd: $fdate = date('Y年m月d日', $time); break; case $d < $td: $fdate = '后天' . date('H:i', $time); break; case $d < 0: $fdate = '明天' . date('H:i', $time); break; case $d < 60: $fdate = $d . '秒前'; break; case $d < 3600: $fdate = floor($d / 60) . '分钟前'; break; case $d < $dd: $fdate = floor($d / 3600) . '小时前'; break; case $d < $yd: $fdate = '昨天' . date('H:i', $time); break; case $d < $byd: $fdate = '前天' . date('H:i', $time); break; case $d < $md: $fdate = date('m月d日 H:i', $time); break; case $d < $ld: $fdate = date('m月d日', $time); break; default: $fdate = date('Y年m月d日', $time); break; } } return $fdate; }
관련 권장 사항:
PHP 자세히 설명된 현재 타임스탬프 기능 가져오기위 내용은 PHP 타임스탬프 기능에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!