Views 10591 Votes 0 Comment 0
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
어떤 XE플래너 위젯을 쓰다보면 아래 로컬 함수가 구현되지 않아 오류나는 경우가 있다.
class.planner123_widget_main.php 함수의 1

그레고리안(Gregorian) -> 줄리안(Julian) 변환
function GregorianToJD ($month,$day,$year) { 
    if ($month > 2) { 
        $month = $month - 3; 
    } else { 
        $month = $month + 9; 
        $year = $year - 1; 
    } 
    $c = floor($year / 100); 
    $ya = $year - (100 * $c); 
    $j = floor((146097 * $c) / 4); 
    $j += floor((1461 * $ya)/4); 
    $j += floor(((153 * $month) + 2) / 5); 
    $j += $day + 1721119; 
    return $j; 
}

줄리안(Julian) -> 그레고리안(Gregorian) 변환 (버전1)
function JDToGregorian($julian) {
    //return planner123_widget_main::fn_calcJDToGregorian($julian);
    $julian = $julian - 1721119;
    $calc1 = 4 * $julian - 1;
    $year = floor($calc1 / 146097);
    $julian = floor($calc1 - 146097 * $year);
    $day = floor($julian / 4);
    $calc2 = 4 * $day + 3;
    $julian = floor($calc2 / 1461);
    $day = $calc2 - 1461 * $julian;
    $day = floor(($day + 4) / 4);
    $calc3 = 5 * $day - 3;
    $month = floor($calc3 / 153);
    $day = $calc3 - 153 * $month;
    $day = floor(($day + 5) / 5);
    $year = 100 * $year + $julian;
    
    if ($month < 10) {
        $month = $month + 3;
    }else{
        $month = $month - 9;
        $year = $year + 1;
    }
    
    if ($day < 10) {
        $day = "0".$day;
    }
    
    if ($month < 10) {
        $month = "0".$month;
    }
    
    //return $day."/".$month."/".$year;
    return $month."/".$day."/".$year;
}


줄리안(Julian) -> 그레고리안(Gregorian) 변환 (버전2)

function fn_calcJDToGregorian($julian) {
    $z = $julian;
    $f =  .5;
    $f = 0.0; // PHP함수와 결과값 맞추기 위해 0.5일 조정함

    if($z < 2299161){
        $a = $z;
    }else{
        $alpha = floor(($z - 1867216.25) / 36524.25);
        $a = $z + 1 + $alpha - floor($alpha / 4);
    }

    $b = $a + 1524;
    $c = floor( ($b - 122.1) / 365.25);
    $d = floor( 365.25 * $c);
    $e = floor( ($b - $d) / 30.6001);
    $dd = floor( $b - $d - floor(30.6001 * $e) + $f);

    if($e < 13.5) {
        $mm = $e - 1;
    }else{
        $mm = $e - 13;
    }

    if($mm < 2.5 ){
        $yy = $c - 4715;
    }else{
        $yy = $c - 4716;
    }

    return "$mm/$dd/$yy";
}


[출처] http://flashcafe.org/php_function/8705

?

List of Articles
No. Category Subject Author Date Views
725 Develop [c] 암호화 알고리즘 DES 구현 ㅋㅋ file hooni 2013.04.23 7433
724 Develop [c] 학교 건물 최단거리 찾는 웹 연동 프로그램 file hooni 2013.04.23 6800
723 Develop [js] 셀렉트박스(select)의 옵션(option) 동적으로 추가/제거 file hooni 2013.04.23 8060
722 Develop [js] 숫자만 입력하게 하는 자바스크립트 hooni 2013.04.23 6795
721 Develop [c] 패킷 에널라이저 예제 소스(성안당) file hooni 2013.04.23 6947
720 Develop [js] 수명체크 프로그램 ㅋㅋ file hooni 2013.04.23 6838
719 Develop 도메인 관련 솔루션 분석할 거.. ㅋㄷ file hooni 2013.04.23 6981
718 Develop 프로그래밍 소스 관련 사이트.. hooni 2013.04.23 16485
717 Develop 프로그램 문서 관리 (Doxygen) hooni 2013.04.23 16385
716 Develop [php] php+db 연동(odbc, mssql, mysql, sybase) 3 hooni 2013.04.23 8539
715 Develop [asp] 폼 메일 소스 file hooni 2013.04.23 7352
714 Develop [asp] 폼메일 예제와 메일 포워딩 프로그램 file hooni 2013.04.23 7129
713 Develop [c] 프로세스 검사하기 hooni 2013.04.23 8027
712 System/OS [linux] 리눅스,유닉스 /proc/stat 파일 보는 법 hooni 2013.04.23 17916
711 System/OS [linux] 리눅스, 유닉스 CPU 이용률 확인.. hooni 2013.04.23 23782
710 System/OS [linux] 리눅스 파일시스템과 디렉토리 설명 hooni 2013.04.23 26877
Board Pagination Prev 1 ... 27 28 29 30 31 ... 74 Next
/ 74