>  기사  >  백엔드 개발  >  날짜를 JDE의 공자 달력 형식으로 변환하는 PHP 방법

날짜를 JDE의 공자 달력 형식으로 변환하는 PHP 방법

不言
不言원래의
2018-07-04 17:53:072071검색

이 글은 PHP에서 날짜를 JDE의 달력 형식으로 변환하는 방법을 주로 소개합니다. 이제 여러분과 공유합니다. 도움이 필요한 친구들이 참고할 수 있습니다.

JDE의 달력 형식 규칙은 다음과 같습니다.

유교 달력은 6자리 숫자입니다. (예: 2018년 1월 1일 => 118001)

첫 번째 숫자는 세기를 나타냅니다. (예: 1은 21세기를 나타냅니다. 0은 20세기를 나타냅니다.) 세 번째 숫자는 연도를 나타냅니다(예: 2018은 18).

의 마지막 세 자리는 연도의 날짜를 나타냅니다.

방법은 다음과 같습니다.

/**
 * 日期转换为 Jde 儒日历 【支持时间转换范围:1970 - 2999年】
 * 【六位: 第一位标识 世纪 例: 0表示20世纪,1表示21世纪,第二、三位表示年,最后三位表示本年的第几天】
 * 例:2018-01-01  =》 118001
 * @param $date
 * @return string */function getJdeDate($date){    #转换为时间戳
    $unix_time = strtotime($date);    #获取时间信息
    $ary_date = getdate($unix_time);    #获取年
    $str_year = $ary_date['year'];    #获取世纪标识 【20世纪 => 0; 21世纪 => 1; 22世纪 => 2】
    #如果年/100有余数
    if($str_year%100) {        
    $century = ceil($str_year/100)%10; #向上取整
    } else {        
    $century = floor($str_year/100)%10; #向下取整    
    }    #获取年后两位
    $year = substr($str_year,2);    #获取一年中的第几天
    $year_day = $ary_date['yday'] + 1;    #如果不足三位数补足三位数
    $year_day = str_pad($year_day,3,0,STR_PAD_LEFT);    #儒日历
    return $century.$year.$year_day;
}

테스트 사례:

<?php
/**
 * 日期转换为 Jde 儒日历 【支持时间转换范围:1970 - 2999年】
 * 【六位: 第一位标识 世纪 例: 0表示20世纪,1表示21世纪,第二、三位表示年,最后三位表示本年的第几天】
 * 例:2018-01-01  =》 118001
 * @param $date
 * @return string
 */
function getJdeDate($date){
    #转换为时间戳
    $unix_time = strtotime($date);
    #获取时间信息
    $ary_date = getdate($unix_time);
    #获取年
    $str_year = $ary_date[&#39;year&#39;];
    #获取世纪标识 【20世纪 => 0; 21世纪 => 1; 22世纪 => 2】
    #如果年/100有余数
    if($str_year%100) {
        $century = ceil($str_year/100)%10; #向上取整
    } else {
        $century = floor($str_year/100)%10; #向下取整
    }
    #获取年后两位
    $year = substr($str_year,2);
    #获取一年中的第几天
    $year_day = $ary_date[&#39;yday&#39;] + 1;
    #如果不足三位数补足三位数
    $year_day = str_pad($year_day,3,0,STR_PAD_LEFT);
    #儒日历
    return $century.$year.$year_day;
}
echo getJdeDate(&#39;2018-01-01 00:00:00&#39;);

출력:

118001

위 내용은 이 글의 전체 내용입니다. 모든 분들의 학습에 도움이 되었으면 좋겠습니다. 더 많은 관련 내용은 PHP 중국어 홈페이지를 주목해주세요!

관련 추천:

php 인스턴트 푸시 기능 추가 방법


php 양방향 대기열 코드

위 내용은 날짜를 JDE의 공자 달력 형식으로 변환하는 PHP 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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