時間戳友好顯示時間和時間轉換成描述

/**
 * 時間轉換爲秒數
 * @param unknown $time	需要轉換的時間格式,H:i:s
 * @return number
 */
function timeToSeconds($time=0){
	if($time == 0) $time = date('H:i:s');
	$parsed = date_parse($time);
	$seconds = $parsed['hour'] * 3600 + $parsed['minute'] * 60 + $parsed['second'];
	return $seconds;
}

/**
 * 時間戳友好顯示時間
 * $time 要格式化的時間戳 默認爲當前時間
 */
function mdate($time = NULL) {
	$text = '';
	$time = $time === NULL || $time > time() ? time() : intval($time);
	$t = time() - $time; //時間差 (秒)
	if ($t == 0)
		$text = '剛剛';
	elseif ($t < 60)
		$text = $t . '秒前'; // 一分鐘內
	elseif ($t < 60 * 60)
		$text = floor($t / 60) . '分鐘前'; //一小時內
	elseif ($t < 60 * 60 * 24)
		$text = floor($t / (60 * 60)) . '小時前'; // 一天內
	elseif ($t < 60 * 60 * 24 * 3)
		$text = floor($time/(60*60*24)) ==1 ?'昨天 ' . date('H:i', $time) : '前天 ' . date('H:i', $time) ; //昨天和前天
	elseif ($t < 60 * 60 * 24 * 30)
		$text = date('m月d日 H:i', $time); //一個月內
	elseif ($t < 60 * 60 * 24 * 365)
		$text = date('m月d日', $time); //一年內
	else
		$text = date('Y年m月d日', $time); //一年以前
	return $text;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章