/**
* 友好時間顯示
* @param $time
* @param $lang 0預設隻傳回中文,1傳回英文,其他值傳回中英數組
* @return bool|string
*/
function fdate($time,$lang = 0)
{
if (!$time)
return false;
$enMonth =array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
$fdate = array();
$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[0] = '剛剛';
$fdate[1] = 'just';
} else {
switch ($d) {
case $d < $atd:
$fdate[0] = date('Y年m月d日', $time);
$fdate[1] = date('d ', $time).$enMonth[intval(date('m',$time))].date(' Y', $time);
break;
case $d < $td:
$fdate[0] = '後天' . date('H:i', $time);
$fdate[1] = date('H:i', $time).' after tomorrow';
break;
case $d < 0:
$fdate[0] = '明天' . date('H:i', $time);
$fdate[1] = 'Tomorrow '.date('H:i', $time);
break;
case $d < 60:
$fdate[0] = $d . '秒前';
$fdate[1] = $d.' seconds ago';
break;
case $d < 3600:
$fdate[0] = floor($d / 60) . '分鐘前';
$fdate[1] = floor($d/60) .' minutes ago';
break;
case $d < $dd:
$fdate[0] = floor($d / 3600) . '小時前';
$fdate[1] = floor($d / 3600) . ' hours ago';
break;
case $d < $yd:
$fdate[0] = '昨天' . date('H:i', $time);
$fdate[1] = '1 day(s) ago, '.date('H:i', $time);
break;
case $d < $byd:
$fdate[0] = '前天' . date('H:i', $time);
$fdate[1] = '2 day(s) ago, '.date('H:i', $time);
break;
case $d < $md:
$fdate[0] = date('m月d日 H:i', $time);
$fdate[1] = date('H:i',$time).' on '.$enMonth[intval(date('m',$time))].date(' d', $time);
break;
case $d < $ld:
$fdate[0] = date('m月d日', $time);
$fdate[1] = $enMonth[date('m',$time)].date(' d ', $time).'th';
break;
default:
$fdate[0] = date('Y年m月d日', $time);
$fdate[1] = date('d ', $time).$enMonth[intval(date('m',$time))].date(' Y', $time);
break;
}
}
if($lang == 0){
return $fdate[0];
}else if($lang == 1){
return $fdate[1];
}else{
return $fdate;
}
}