>  기사  >  백엔드 개발  >  데이터베이스에 저장된 타임스탬프를 과거 시간 형식으로 변환

데이터베이스에 저장된 타임스탬프를 과거 시간 형식으로 변환

WBOY
WBOY원래의
2016-08-08 09:29:591837검색

이 기능은 일반적으로 웨이보나 블로그의 기사 게시 시간을 표시하는 데 사용됩니다. 예: Sina Weibo에 Weibo 게시물이 게시된 경우, 오늘 게시된 경우에는 특정 시간 대신 XX초 및 XX시간 전이 표시됩니다. 이전에 게시된 Weibo를 다시 게시하면 원본 Weibo에 게시된 시간이 표시됩니다.
그렇다면 그것을 달성하는 방법은 무엇입니까? 코드는 다음과 같습니다.

<code><span>/**格式化时间函数
 *<span> @param</span> $time 需要格式化的时间戳
 */</span><span><span>function</span><span>time_format</span><span>(<span>$time</span>)</span> {</span><span>$now</span> = time();
    <span>$tody</span> = strtotime(date(<span>'Y-m-d'</span>));
    <span>$diff</span> = <span>$now</span> - <span>$time</span>;
    <span>$str</span> = <span>''</span>;
    <span>switch</span> (<span>$time</span>) {
        <span>case</span><span>$diff</span> < <span>60</span>:
            <span>$str</span> = <span>$diff</span> . <span>'秒前'</span>;
            <span>break</span>;
        <span>case</span><span>$diff</span> < <span>3600</span>:
            <span>$str</span> = floor(<span>$diff</span> / <span>60</span>) . <span>'分钟前'</span>;
            <span>break</span>;
        <span>case</span><span>$diff</span> < (<span>3600</span> * <span>8</span>):
            <span>$str</span> = floor(<span>$diff</span> / <span>3600</span>) . <span>'小时前'</span>;
            <span>break</span>;
        <span>case</span><span>$time</span> > <span>$tody</span>:
            <span>$str</span> = <span>'今天'</span> . date(<span>'Y-m-d H:i:s'</span>, <span>$time</span>);
            <span>break</span>;
        <span>default</span>:
            <span>$str</span> = date(<span>'Y-m-d H:i:s'</span>, <span>$time</span>);
    }

    <span>return</span><span>$str</span>;
}

<span>$time</span> = <span>1423110837</span>;<span>//模拟保存在数据库中的时间戳</span><span>echo</span> time_format(<span>$time</span>);</code>

해석:
1. 먼저 현재 시간을 가져와야 합니다. now=time( );2, 우리 받기 테이크오늘 0시간 0포인트0 / 시간시간, 과 함께 을 사용하세요번호기준도서관 오늘 또한 어제입니다. . 즉, :
tody = strtotime(날짜 ('Y-m-d')) 3. 데이터베이스의 타임스탬프와 현재 시간의 차이를 가져옵니다. 즉, di 에프에프=

지금 - $time 4. 스위치를 사용하여 데이터베이스의 타임스탬프를 결정하여 해당 시간 형식(시, 분, 초, 특정 시간)을 표시합니다.

위 내용을 포함하여 데이터베이스에 저장된 타임스탬프를 과거 시간 형식으로 변환하는 방법을 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되길 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:nginx lua 설치 spdy다음 기사:nginx lua 설치 spdy