PHP转换HTML格式化日期 [英] PHP Convert HTML Formatted Date

查看:134
本文介绍了PHP转换HTML格式化日期的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

从Twitter搜索API Atom Feed返回的日期为2008-11-03T21:30:06Z,需要转换为X秒/分钟/小时/天前,显示twitter消息的发布时间。 / p>

想想这可以用php date()函数使用DATE_ATOM值吗?

解决方案

  function time_since($ your_timestamp){
$ unix_timestamp = strtotime($ your_timestamp);
$ seconds = time() - $ unix_timestamp;
$ minutes = 0;
$ hours = 0;
$ days = 0;
$ weeks = 0;
$ months = 0;
$ years = 0;
if($ seconds == 0)$ seconds = 1;
if($ seconds> 60){
$ minutes = $ seconds / 60;
} else {
return add_s($ seconds,'second');
}

if($ minutes> = 60){
$ hours = $ minutes / 60;
} else {
return add_s($ minutes,'minute');
}

if($ hours> = 24){
$ days = $ hours / 24;
} else {
return add_s($ hours,'hour');
}

if($ days> = 7){
$ weeks = $ days / 7;
} else {
return add_s($ days,'day');
}

if($ weeks> = 4){
$ months = $ weeks / 4;
} else {
return add_s($ weeks,'week');
}

if($ months> = 12){
$ years = $ months / 12;
return add_s($ years,'year');
} else {
return add_s($ months,'month');
}

}

函数add_s($ num,$ word){
$ num = floor($ num);
if($ num == 1){
return $ num。''。$ word。'ago';
} else {
return $ num。''。$ word。's ago';
}
}

echo time_since('2008-11-03T21:30:06Z');


Published Date returned from Twitter Search API Atom Feed as 2008-11-03T21:30:06Z which needs to be converted to "X seconds/minutes/hours/days ago" for showing how long ago twitter messages were posted.

Think this can be done with php date() function using DATE_ATOM value?

解决方案

function time_since($your_timestamp) {
    $unix_timestamp = strtotime($your_timestamp);
    $seconds = time() - $unix_timestamp;
    $minutes = 0;
    $hours = 0;
    $days = 0;
    $weeks = 0;
    $months = 0;
    $years = 0;
    if ( $seconds == 0 ) $seconds = 1;
    if ( $seconds> 60 ) {
        $minutes =  $seconds/60;
    } else {
        return add_s($seconds,'second');
    }

    if ( $minutes >= 60 ) {
        $hours = $minutes/60;
    } else {
        return add_s($minutes,'minute');
    }

    if ( $hours >= 24) {
        $days = $hours/24;
    } else {
        return add_s($hours,'hour');
    }

    if ( $days >= 7 ) {
        $weeks = $days/7;
    } else {
        return add_s($days,'day');
    }

    if ( $weeks >= 4 ) {
        $months = $weeks/4;
    } else {
        return add_s($weeks,'week');
    }

    if ( $months>= 12 ) {
        $years = $months/12;
        return add_s($years,'year');
    } else {
        return add_s($months,'month');
    }

}

function add_s($num,$word) {
    $num = floor($num);
    if ( $num == 1 ) {
        return $num.' '.$word.' ago';
    } else {
        return $num.' '.$word.'s ago';
    }
}

echo time_since('2008-11-03T21:30:06Z');

这篇关于PHP转换HTML格式化日期的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆