Permanently protected module

모듈:날짜

Module:Date

-- 다른 모듈에서 사용할 날짜 함수. - I18N과 시간대는 지원되지 않는다.  국부적 빼기 = '−'  - 유니코드 U+2212 MEX SIGN 국부적 마루를 깔다 = 수학을 하다.  국부적 날짜, 다테디프, 확산시키다  -- 포워드 선언 국부적 유니크 = { '이중 식별자' }  국부적 기능을 하다 is_date(t)  -- 날짜를 읽기 전용으로 만드는 데 사용되는 시스템은 고유하지 않음을 의미한다.  -- 편리하게 확인할 수 있는 충족 가능한 기능.  돌아오다 타자를 치다(t) == '테이블' 그리고 t._id == 유니크 종지부를 찍다  국부적 기능을 하다 is_message(t)  돌아오다 타자를 치다(t) == '테이블' 그리고 구할 수 있는(t) == 확산시키다 종지부를 찍다  국부적 기능을 하다 _list_properties(리스트를 작성하다, 9월을 보내다)  돌아오다 table.classat(리스트를 작성하다, 9월을 보내다) 종지부를 찍다  국부적 기능을 하다 수집()  -- 품목을 보관할 테이블을 반환하십시오.  돌아오다 {   n = 0,   덧셈을 = 기능을 하다 (자아의, 항목)    자아의.n = 자아의.n + 1    자아의[자아의.n] = 항목   종지부를 찍다,   합류하다 = _list_properties,  } 종지부를 찍다  국부적 기능을 하다 trip_to_nil(문자 메시지를 보내다)  -- 텍스트가 문자열인 경우 잘린 내용을 반환하거나, 비어 있는 경우 0을 반환하십시오.  -- 그렇지 않으면 텍스트 반환(날짜 필드가 제공될 때 편리함)  -- 문자열, 숫자 또는 다른 유형을 통과할 수 있는 또 다른 모듈).  만일 타자를 치다(문자 메시지를 보내다) == '끈' 그때   문자 메시지를 보내다 = 문자 메시지를 보내다:짝을 맞추다('(%S.-)%s*
                
) 종지부를 찍다 돌아오다 문자 메시지를 보내다 종지부를 찍다 국부적 기능을 하다 is_suffer_year(연도, 이름을 짓다) -- 한 해가 윤년이라면 진실로 돌아가십시오. 만일 이름을 짓다 == '줄리안' 그때 돌아오다 연도 % 4 == 0 종지부를 찍다 돌아오다 (연도 % 4 == 0 그리고 연도 % 100 ~= 0) 또는 연도 % 400 == 0 종지부를 찍다 국부적 기능을 하다 days_in_month(연도, , 이름을 짓다) -- 반환일 수(1..31). 주어진 달(1..12). 만일 == 2 그리고 is_suffer_year(연도, 이름을 짓다) 그때 돌아오다 29 종지부를 찍다 돌아오다 ({ 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 })[] 종지부를 찍다 국부적 기능을 하다 h_m_s(시간) -- 하루의 일부분에서 추출한 반환 시간, 분, 초. 시간 = 마루를 깔다(시간 * 24 * 3600 + 0.5) -- 초 수 국부적 둘째 = 시간 % 60 시간 = 마루를 깔다(시간 / 60) 돌아오다 마루를 깔다(시간 / 60), 시간 % 60, 둘째 종지부를 찍다 국부적 기능을 하다 hms(날짜를 잡다) -- 날짜 시간으로부터 하루의 분수를 반환하며, 여기서 (0 <= 분율 < 1) - 값이 유효하지만 범위를 벗어나면 무엇이든 될 수 있는 경우. 돌아오다 (날짜를 잡다.시간 + (날짜를 잡다.극히 작은 + 날짜를 잡다.둘째 / 60) / 60) / 24 종지부를 찍다 국부적 기능을 하다 쥴리안_데이트(날짜를 잡다) - 줄리안 또는 그레고리력으로 다음 날짜에 jd, jdz 반환 -- jd = 줄리앙 날짜 및 부분 부분은 정오에 0이다. -- jdz = 동일하지만 시간이 주어지지 않는 경우 시간이 00:00:00이라고 가정함 -- http://www.tondering.dk/claus/cal/julperiod.php#formula -- 테스트 결과, -9999년부터 9999년까지의 모든 날짜에 이 기능이 적용된다는 것을 알 수 있다! -- JDN 0은 월요일 정오 UTC에서 시작하는 24시간 기간이다. -- 기원전 4713년 1월 1일 = (-4712, 1, 1) 율리우스력 -- 기원전 4714년 11월 24일 = (-4713, 11, 24) 그레고리력 국부적 상쇄하다 국부적 a = 마루를 깔다((14 - 날짜를 잡다.)/12) 국부적 y = 날짜를 잡다.연도 + 4800 - a 만일 날짜를 잡다.달력 == '줄리안' 그때 상쇄하다 = 마루를 깔다(y/4) - 32083 다른 상쇄하다 = 마루를 깔다(y/4) - 마루를 깔다(y/100) + 마루를 깔다(y/400) - 32045 종지부를 찍다 국부적 m = 날짜를 잡다. + 12*a - 3 국부적 JD = 날짜를 잡다.낮의 + 마루를 깔다((153*m + 2)/5) + 365*y + 상쇄하다 만일 날짜를 잡다.시간적 여유가 있다 그때 JD = JD + hms(날짜를 잡다) - 0.5 돌아오다 JD, JD 종지부를 찍다 돌아오다 JD, JD - 0.5 종지부를 찍다 국부적 기능을 하다 set_date_from_jd(날짜를 잡다) -- 줄리안 날짜 필드에서 테이블 날짜 필드 설정. -- 날짜가 유효한 경우 true로 반환 -- http://www.tondering.dk/claus/cal/julperiod.php#formula -- 이것은 촉각의 율리우스와 그레고리우스력을 다룬다. &shy; 부정적인 줄리안 데이트는 정의되지 않지만 효과가 있다. 국부적 이름을 짓다 = 날짜를 잡다.달력 국부적 낮은, 높은 -- 날짜 범위의 최소/최대 한도 -9999-01-01 ~ 9999-12-31 만일 이름을 짓다 == '그리고리아어' 그때 낮은, 높은 = -1930999.5, 5373484.49999 그렇지 않으면 이름을 짓다 == '줄리안' 그때 낮은, 높은 = -1931076.5, 5373557.49999 다른 돌아오다 종지부를 찍다 국부적 JD = 날짜를 잡다.JD 만일 아닌 (타자를 치다(JD) == '숫자' 그리고 낮은 <= JD 그리고 JD <= 높은) 그때 돌아오다 종지부를 찍다 국부적 jdn = 마루를 깔다(JD) 만일 날짜를 잡다.시간적 여유가 있다 그때 국부적 시간 = JD - jdn -- 0 <= 시간 < 1 만일 시간 >= 0.5 그때 -- 다음 날 자정이나 그 이후일 경우 jdn = jdn + 1 시간 = 시간 - 0.5 다른 시간 = 시간 + 0.5 종지부를 찍다 날짜를 잡다.시간, 날짜를 잡다.극히 작은, 날짜를 잡다.둘째 = h_m_s(시간) 다른 날짜를 잡다.둘째 = 0 날짜를 잡다.극히 작은 = 0 날짜를 잡다.시간 = 0 종지부를 찍다 국부적 b, c 만일 이름을 짓다 == '줄리안' 그때 b = 0 c = jdn + 32082 다른 -- 그레고리안 국부적 a = jdn + 32044 b = 마루를 깔다((4*a + 3)/146097) c = a - 마루를 깔다(146097*b/4) 종지부를 찍다 국부적 d = 마루를 깔다((4*c + 3)/1461) 국부적 e = c - 마루를 깔다(1461*d/4) 국부적 m = 마루를 깔다((5*e + 2)/153) 날짜를 잡다.낮의 = e - 마루를 깔다((153*m + 2)/5) + 1 날짜를 잡다. = m + 3 - 12*마루를 깔다(m/10) 날짜를 잡다.연도 = 100*b + d - 4800 + 마루를 깔다(m/10) 돌아오다 진실의 종지부를 찍다 국부적 기능을 하다 fix_message(숫자, y, m, d, H, M, S, 부분적, 시간적 여유가 있다, 달력) -- 주어진 값을 정상화한 결과를 표 숫자에 넣는다. -- y가 유효하면 결과 m, d 값이 유효하며, 호출자가 y를 체크한다. - m 또는 d가 0일 수 있는 PHP mktime의 논리는 다음과 같다. - 이전 유닛, -1은 그 전 유닛 등. -- 긍정적인 가치는 앞으로 나아간다. 국부적 날짜를 잡다 만일 아닌 (1 <= m 그리고 m <= 12) 그때 날짜를 잡다 = 날짜(y, 1, 1) 만일 아닌 날짜를 잡다 그때 돌아오다 종지부를 찍다 날짜를 잡다 = 날짜를 잡다 + ((m - 1) .. 'm') y, m = 날짜를 잡다.연도, 날짜를 잡다. 종지부를 찍다 국부적 days_hms 만일 아닌 부분적 그때 만일 시간적 여유가 있다 그리고 H 그리고 M 그리고 S 그때 만일 아닌 (0 <= H 그리고 H <= 23 그리고 0 <= M 그리고 M <= 59 그리고 0 <= S 그리고 S <= 59) 그때 days_hms = hms({ 시간 = H, 극히 작은 = M, 둘째 = S }) 종지부를 찍다 종지부를 찍다 만일 days_hms 또는 아닌 (1 <= d 그리고 d <= days_in_month(y, m, 달력)) 그때 날짜를 잡다 = 날짜를 잡다 또는 날짜(y, m, 1) 만일 아닌 날짜를 잡다 그때 돌아오다 종지부를 찍다 날짜를 잡다 = 날짜를 잡다 + (d - 1 + (days_hms 또는 0)) y, m, d = 날짜를 잡다.연도, 날짜를 잡다., 날짜를 잡다.낮의 만일 days_hms 그때 H, M, S = 날짜를 잡다.시간, 날짜를 잡다.극히 작은, 날짜를 잡다.둘째 종지부를 찍다 종지부를 찍다 종지부를 찍다 숫자.연도 = y 숫자. = m 숫자.낮의 = d 만일 days_hms 그때 -- 유효한 H가 has time을 설정하므로 유효하지 않은 H를 설정하지 마십시오. 숫자.시간 = H 숫자.극히 작은 = M 숫자.둘째 = S 종지부를 찍다 종지부를 찍다 국부적 기능을 하다 set_date_from_set(날짜를 잡다, 숫자, 옵션들) -- 숫자 값에서 테이블 날짜 필드를 설정하십시오. -- 날짜가 유효한 경우 true로 반환 만일 타자를 치다(숫자) ~= '테이블' 그때 돌아오다 종지부를 찍다 국부적 y = 숫자.연도 또는 날짜를 잡다.연도 국부적 m = 숫자. 또는 날짜를 잡다. 국부적 d = 숫자.낮의 또는 날짜를 잡다.낮의 국부적 H = 숫자.시간 국부적 M = 숫자.극히 작은 또는 날짜를 잡다.극히 작은 또는 0 국부적 S = 숫자.둘째 또는 날짜를 잡다.둘째 또는 0 국부적 need_fix 만일 y 그리고 m 그리고 d 그때 날짜를 잡다.부분적 = 못을 박다 만일 아닌 (-9999 <= y 그리고 y <= 9999 그리고 1 <= m 그리고 m <= 12 그리고 1 <= d 그리고 d <= days_in_month(y, m, 날짜를 잡다.달력)) 그때 만일 아닌 날짜를 잡다.want_fix 그때 돌아오다 종지부를 찍다 need_fix = 진실의 종지부를 찍다 그렇지 않으면 y 그리고 날짜를 잡다.부분적 그때 만일 d 또는 아닌 (-9999 <= y 그리고 y <= 9999) 그때 돌아오다 종지부를 찍다 만일 m 그리고 아닌 (1 <= m 그리고 m <= 12) 그때 만일 아닌 날짜를 잡다.want_fix 그때 돌아오다 종지부를 찍다 need_fix = 진실의 종지부를 찍다 다른 돌아오다 종지부를 찍다 만일 날짜를 잡다.부분적 그때 H = 못을 박다 -- 아무 때나 무시 M = 못을 박다 S = 못을 박다 다른 만일 H 그때 -- H를 설정하지 않고는 M이나 S를 설정할 수 없다. 날짜를 잡다.시간적 여유가 있다 = 진실의 다른 H = 0 종지부를 찍다 만일 아닌 (0 <= H 그리고 H <= 23 그리고 0 <= M 그리고 M <= 59 그리고 0 <= S 그리고 S <= 59) 그때 만일 날짜를 잡다.want_fix 그때 need_fix = 진실의 다른 돌아오다 종지부를 찍다 종지부를 찍다 종지부를 찍다 날짜를 잡다.want_fix = 못을 박다 만일 need_fix 그때 fix_message(숫자, y, m, d, H, M, S, 날짜를 잡다.부분적, 날짜를 잡다.시간적 여유가 있다, 날짜를 잡다.달력) 돌아오다 set_date_from_set(날짜를 잡다, 숫자, 옵션들) 종지부를 찍다 날짜를 잡다.연도 = y - -9999 ~ 9999('n BC' → 연도 = 1 - n) 날짜를 잡다. = m - 1 ~ 12(부분적인 경우 0일 수 있음) 날짜를 잡다.낮의 = d - 1 ~ 31(* = 부분인 경우 nil) 날짜를 잡다.시간 = H -- 0 ~ 59(*) 날짜를 잡다.극히 작은 = M -- 0 ~ 59(*) 날짜를 잡다.둘째 = S -- 0 ~ 59(*) 만일 타자를 치다(옵션들) == '테이블' 그때 을 위해 _, k 아이페어({ 'am', '에라', '형식' }) 하다 만일 옵션들[k] 그때 날짜를 잡다.옵션들[k] = 옵션들[k] 종지부를 찍다 종지부를 찍다 종지부를 찍다 돌아오다 진실의 종지부를 찍다 국부적 기능을 하다 make_option_table(옵션1, 옵션2) -- options1이 문자열인 경우, 설정이 있는 테이블을 반환하거나, -- 테이블인 경우 설정을 사용하십시오. -- 누락된 옵션은 테이블 옵션2 또는 기본값에서 설정된다. -- 기본값을 사용할 경우 플래그가 설정되므로 호출자가 값이 의도적으로 설정되지 않았음을 알 수 있다. -- 유효한 옵션 설정: - am: '아침', '아침', '아침', '아침' - 'pm', 'pm', 'pm', 'p.m.' (각각 위의 항목과 같은 의미를 갖는다) - 시대 : 'BCMINUS', 'BCNECT', 'BC', 'BC', 'BC', 'BCE', 'BCE', 'BCE', 'BCE', 'BCE', 'BCE', 'BCE', 'AD', 'A.D.', 'C.E', 'C.E.' --옵션 am = 'am'은 시간이 AM이라는 뜻이 아니라 시간에 따라 'am' 또는 'pm'이 사용된다는 뜻이다. - 그리고 am = 'pm'은 같은 뜻을 가지고 있다. -- 이와 유사하게, 시대 = 'BC'는 년도 <= 0>이면 'BC'가 사용된다는 뜻이다. -- BCMINUS는 년도 < 0이고 디스플레이 형식에는 %{era}가 포함되지 않은 경우 MEXER를 표시한다. - BCNECTION은 비슷하지만 하이픈을 표시한다. 국부적 결과 = { 기본적으로 = {} } 만일 타자를 치다(옵션1) == '테이블' 그때 결과.am = 옵션1.am 결과.시대 = 옵션1.시대 그렇지 않으면 타자를 치다(옵션1) == '끈' 그때 -- 예: 'am:AM 시대:BC 또는 'am=AM 시대=BC'이다. 을 위해 항목 옵션1:gmatch('%S+') 하다 국부적 lhs, rhs. = 항목:짝을 맞추다('^(%w+)[:=(.+)
$$SIDE_BOTTOM$$
    $$BOTTOM$$