K-위키:함수
문서를 읽기 전에 모니터나 액정 앞에서 따봉각을 치켜 세웁시다. |
|
이 문서는 유용한 정보가 담긴 문서입니다. 이 문서는 디시위키답지 않게 정말로 유용하거나 자세한 정보를 가득 담고 있습니다. 지식이 늘었다! |
| 이 문서는 이해하기 어려운 대상을 다룹니다. 이 문서는 일반적인 뇌를 가지고도 이해하기 어려운 대상에 대해 다룹니다. 두뇌를 풀가동해도 아마 이해하기 어려울 것입니다. |
개요
[원본 편집]디키의 함수를 설명해 준다. 문서 편집시 하단에 보면 특수 함수: {{#expr:값}} , {{#time:값}} , {{#if:조건문}} , {{#switch:값}} 라는게 있을 거다. 근데 다들 사용법을 모르더라.
만들다가 중단된 문서다. 누가 채워줘라. 참고로 이 문서에 틀 넣으면 에러가 난다고 한다. 특히 전체 편집....
특수 함수 [기본]
[원본 편집]#expr
[원본 편집]#expr은 간단한 계산을 할 수 있는 기능으로, 다음과 같이 사용합니다.
{{#expr:계산식}}
| 연산자 | 기능 | 예제 |
|---|---|---|
| - | {{#expr:1234567890}} = 1234567890 | |
| {{#expr:0.1}} = 0.1 | ||
| {{#expr:123456789012345}} = 1.2345678901234E+14? | ||
| ( ) | 괄호 | {{#expr:(30+7)*7}} = 259 |
| + | 양수 부호 | {{#expr:+30*+7}} = 210 |
| - | 음수 부호 | {{#expr:-30*-7}} = 210 |
| not | 부정문 | {{#expr: not 0 * 7}} = 7 {{#expr: not 30+7}} = 7 |
| * | 곱셈 | {{#expr: 30 * 7}} = 210 |
| / | 나눗셈 | {{#expr: 30 / 7}} = 4.2857142857143 |
| div | 나눗셈. /과 같음 | {{#expr: 30 div 7}} = 4.2857142857143 {{#expr: 5 div 2 * 2 + 5 mod 2}} = 6 |
| mod | 정수 나눗셈을 한 나머지를 구합니다.
주의: 다른 프로그래밍 언어와 작동 방식이 다릅니다. |
{{#expr: 30 mod 7}} = 2 {{#expr: -8 mod -3}} = -2 {{#expr: -8 mod +3}} = -2 {{#expr: 8 mod 2.7}} = 0 {{#expr: 8 mod 3.2}} = 2 {{#expr: 8.9 mod 3}} = 2 |
| + | 덧셈 | {{#expr: 30 + 7}} = 37 |
| - | 뺄셈 | {{#expr: 30 - 7}} = 23 |
| round | 반올림 계산을 합니다. | {{#expr: 30 / 7 round 3}} = 4.286 {{#expr: 30 / 7 round 0}} = 4 {{#expr: 3456 round -2}} = 3500 |
| = | 등호 | {{#expr: 30 = 7}} = 0 |
| <> | 부등호. 다를 경우에 true=1, 같을 경우에 false=0이 나옵니다. | {{#expr: 30 <> 7}} = 1 |
| != | 부등호. <>와 같습니다. | {{#expr: 1 != 0}} = 1 |
| < | 작다 | {{#expr: 30 < 7}} = 0 |
| > | 크다 | {{#expr: 30 > 7}} = 1 |
| <= | 작거나 같다 | {{#expr: 30 <= 7}} = 0 |
| >= | 크거나 같다 | {{#expr: 30 >= 7}} = 1 |
| and | Logical AND | {{#expr: 4<5 and 4 mod 2}} = 0 |
| or | Logical OR | {{#expr: 4<5 or 4 mod 2}} = 1 |
#time
[원본 편집]{{ #time: 형식 }}
{{ #time: 형식 | 시간 }}
시간을 출력합니다. 2016년문서에서 이걸 몰라 고생했다. 혹은 위키아(FANDOM)의 중앙 커뮤니티에서 니가 세운 위키의 문서 수와 날짜를 쓸 때 유용하다. 귀찮게 일일이 안 입력해도 된다.
| 코드 | 설명 | 예시 | 현재 |
|---|---|---|---|
| Y | 네 자리 연도 | 예: 2006 | 2026 |
| y | 두 자리 연도 | 00~99, 예: 06=2006. |
26 |
| L | 윤년일 경우 | 1이면 윤년, 0이면 평년 | 0 |
| n | 현재 달(앞에 0이 붙지 않음) | 1~12 | 2 |
| m | 현재 달(앞에 0이 붙음) | 01~12 | 02 |
| M | 줄인 달 이름 | 1~12 | 2 |
| F | 달 이름 | 1월~12월 | 2월 |
| t | 각 달에 있는 날짜 수 | 28~31 | 28 |
| j | 현재 날(앞에 0이 붙지 않음) | 1~31 | 18 |
| d | 현재 날(앞에 0이 붙음) | 01~31 | 18 |
| z | 그 해부터 지난 날수(0부터 시작함) | 0~364, 윤년일 경우 365까지 | 48 |
| D | 줄인 요일 이름 | 월~일 | 수 |
| l | 요일 이름 | 월요일~일요일 | 수요일 |
| w | 요일 숫자(미국식) | 0(일요일)~6(토요일) | 3 |
| N | 요일 숫자(ISO 8601 방식). | 1(월요일)~7(일요일) | 3 |
| W | ISO 8601 주 숫자(ISO 연도는 월요일부터 일요일까지 완전히 있어야 한 주로 치고, 첫 번째 주는 늘 1월 4일이나 역년 목요일을 포함한다.). | 1 to 52 or 53 (depends on year) | 08 |
| a | am(같은 날 01:00:00부터 12:59:59까지)이나 pm을 소문자로 나타낸다(시간 단위를 12시간제로 표시할 때 쓴다.). | am이나 pm | am |
| A | 위 a와 같지만, 대문자로 나타낸다. | AM이나 PM | AM |
| g | 시간을 12시간 단위로 표기하되, 앞에 0을 붙이지 않음(1, 2자리이고 am/pm 또는 AM/PM과 같이 쓴다.). | 1~12 | 12 |
| h | 시간을 12시간 단위로 표기하되, 앞에 0을 붙임(2자리이고 am/pm 또는 AM/PM과 같이 쓴다.). | 01~12 | 12 |
| G | 시간을 24시간 단위로 표기하되, 앞에 0을 붙이지 않음(1자리 또는 2자리). | 0~23 | 0 |
| H | 시간을 24시간 단위로 표기하되, 앞에 0을 붙임(2자리). | 00~23 | 00 |
| i | 분(2자리). | 00~59 | 48 |
| s | 초(2자리). | 00~59 | 05 |
| U | 1970년 1월 1일 00:00:00 UTC부터 흐른 초 수. | 0~2147483647 | 1771375685 |
| c | ISO 8601 형식을 따른 날짜로, {{#time:Y-m-dTH:m:s{{#time:+H:m|+0 hours}}}}와 같다. | fixed length string | 2026-02-18T00:48:05+00:00 |
| r | RFC 2822 형식을 따른 날짜로, {{#time:D, j M Y H:m:s {{#time:+H:m|+0 hours}}}}와 같다. | variable length string | Wed, 18 Feb 2026 00:48:05 +0000 |
#if
[원본 편집]사용은
{{#if: 조건 | 조건이 참이면 나오는거| 조건이 거짓이면 나오는거}}
이때 조건 문자열이 비어 있지 않을 때 참, 비어 있을 때 거짓을 반환합니다. 거짓일때 나올 문장은 생략이 가능하다.
예제로는 (참고 : 아래 예제에서 '틀 이름'과 '매개 변수'는 마음대로 바꿔서 써도된다.)
{{#if: {{{매개 변수|}}} | 매개 변수는 {{{매개 변수}}}입니다. | 매개 변수가 없습니다.}}
위와 같은 조건문을 틀에 쓴다고 하면,
{{틀 이름|매개 변수=ㅇㅇ}}의 결과 ↓
매개 변수는 ㅇㅇ입니다.
{{틀 이름}}의 결과↓
매개 변수가 없습니다.
{{틀 이름|매개 변수=}}의 결과↓
매개 변수가 없습니다.
- 주의 사항 : 이것은 기존의 {{{매개 변수|}}} 동작과 다름.
| {{{매개 변수|없음}}} | {{#if: {{{매개 변수|}}} | {{{매개 변수}}} | 없음}} | |
|---|---|---|
| {{틀 이름|매개 변수=ㅇ}} | ㅇ | ㅇ |
| {{틀 이름}} | 없음 | 없음 |
| {{틀 이름|매개 변수=}} | 없음 |
#ifeq
[원본 편집]사용은
{{#ifeq: 문자열 1 | 문자열 2 | 문자열 1, 문자열 2가 같은 경우에 나오는거 | 문자열 1, 문자열 2가 다른 경우에 나오는거}}
{{#ifeq:ㅇ|ㅇ|같다.|다르다.}} → 같다.
숫자는 숫자의 값으로 비교를 함.
{{#ifeq:+1|01|같다.|다르다.}} → 같다.
{{#ifeq:"1"|"01"|같다.|다르다.}} → 다르다.
#ifexist
[원본 편집]사용은
{{#ifexist: 문서 이름 | 해당 이름의 문서가 있을 경우에 나오는거 | 해당 이름의 문서가 없을 경우에 나오는거}}
{{#ifexist:디시위키|있다.|없다.}}→있다.
{{#ifexist:6156165144|있다.|없다.}}→없다.
#ifexpr
[원본 편집]사용은
{{#ifexpr: 계산식 | 참일 경우 나오는거 | 거짓일 경우 나오는거}}
{{#ifexpr:1-0|참이다.|거짓이다.}}→참이다.
{{#ifexpr:1-1|참이다.|거짓이다.}}→거짓이다.
{{#ifexpr:1-2|참이다.|거짓이다.}}→참이다.
계산식만 쓰면 아무것도 안뜨는데, 오류 발생시에는 오류 메시지가 나온다.
{{#ifexpr:1-0}}→
{{#ifexpr:1/0}}→0으로 나눴습니다.
- 응용 버전 (수식 오류 판별)
{{#if:{{#ifexpr:1/0}}|오류|정상}}→오류
{{#if:{{#ifexpr:1-0}}|오류|정상}}→정상
#language
[원본 편집]해당 언어 코드에 맞는 언어명을 출력한다.
사용은
- {{#language:ko}} → 한국어
- {{#language:vi}} → Tiếng Việt
- {{#language:zh-min-nan}} → 閩南語 / Bân-lâm-gí
#invoke
[원본 편집]이 함수는 위키 내에 모듈이 없으면 작동이 안된다.
안그러면
스크립트 오류
이렇게 뜰 수 있다. 물론 그 모듈을 잘못 만들어서 이렇게 뜰 수 있다.
ㄴ 디시위키에는 도입안되나?
ㄴ 어두민이 개발담당자와 논의 중이라고만 하고 안 해주고 있음
#css
[원본 편집]CSS 문서 참조. 원래 디시위키에서 작동 안 했는데 어떤 사람이 간절하게 부탁해서 개발담당자가 추가해 줬는지 일부 기능은 작동한다.
