/** * @todo Count Down (倒 计时 ) * @param String $endTime * @return String time * @example * $endTime = 2014-07-13 8:15:00;echo countDown($endTime); */function countDown($endTime){$endTime = strtotime($endTime);$beiginTime = strtotime(dat

	/**
	 * @todo Count Down (倒计时)
	 * @param String $endTime
	 * @return String time
	 * @example 
	 * 	$endTime = '2014-07-13 8:15:00';
		echo countDown($endTime);
	 */
	function countDown($endTime){
		$endTime = strtotime($endTime);
		$beiginTime = strtotime(date('Y-m-d H:i:s'));
		$timeDifference = $endTime - $beiginTime;
		switch ($timeDifference){
			case $timeDifference < 0 :
				 $timeDifference = '已经结束!';
				 break;
			case $timeDifference < 60 :
				 $timeDifference = $timeDifference.'秒';
				 break;
			case $timeDifference < 3600 :
				 $minutes = floor($timeDifference/60);
				 $seconds = floor($timeDifference - ($minutes*60));
				 $timeDifference = $minutes.'分'.$seconds.'秒';
				 break;
			case $timeDifference < 86400 :
				 $hours = floor($timeDifference/3600);
				 $minutes = floor(($timeDifference - ($hours*3600))/60);
				 $seconds = floor($timeDifference - ($hours*3600) - ($minutes*60));
				 $timeDifference = $hours.'小时'.$minutes.'分'.$seconds.'秒';
				 break;
			default:
				 $days = floor(($timeDifference/86400));
				 $hours = floor(($timeDifference - ($days*86400))/3600);
				 $minutes = floor(($timeDifference - ($days*86400) - ($hours*3600))/60);
				 $seconds = floor($timeDifference - ($days*86400) - ($hours*3600) - ($minutes*60));
				 $timeDifference = $days.'天'.$hours.'小时'.$minutes.'分'.$seconds.'秒';
				 break;
		}
		return $timeDifference;
	}
登录后复制

方法可以让整个计算在PHP后端计算并且输出一定的格式后直接在页面展示倒计时详细信息。

页面想要实现1秒自动刷新请配合ajax和定时器去进行局部刷新即可。

此处主要的是描述一个思路,至于怎么做好还是要看项目和具体的需求。

09-05 00:53