모듈:연습장: 두 판 사이의 차이
둘러보기로 이동
검색으로 이동
imported>Hsl0 편집 요약 없음 |
imported>Hsl0 잔글편집 요약 없음 |
||
14번째 줄: | 14번째 줄: | ||
if pass then | if pass then | ||
for key in | for key in ipairs(keys) do | ||
values[key] = mw.uri.decode(frame:callParserFunction('#urlget', frame.args[1] .. '[' .. key .. ']')) | values[key] = mw.uri.decode(frame:callParserFunction('#urlget', frame.args[1] .. '[' .. key .. ']')) | ||
end | end |
2022년 6월 13일 (월) 06:07 판
- 장기간에 걸쳐 수정이 필요한 경우 별도로 모듈페이지를 만드는 것을 추천합니다.
- 다음 문서가 도움이 될 수 있습니다.
- 다른 이름공간에 대한 연습은 아래에서 가능합니다.
- 낙서장을 비우려면 여기 를 클릭하세요.
위 설명은 모듈:연습장/설명문서의 내용을 가져와 보여주고 있습니다. (편집 | 역사) 이 모듈에 대한 수정 연습과 시험은 연습장 (만들기 | 미러)과 시험장 (만들기)에서 할 수 있습니다. 분류는 /설명문서에 넣어주세요. 이 모듈에 딸린 문서. |
local p = {}
local t = os.time()
local c = os.clock()
function p.getarr(frame)
local values = {}
local index = 0
local keys = frame:callParserFunction('#urlget', frame.args[1] .. '[]', '#null')
local last
if keys == frame:callParserFunction('#urlget', frame.args[1] .. '[]', '#nil') then
keys = mw.text.split(mw.uri.decode(keys), ',%s*')
if pass then
for key in ipairs(keys) do
values[key] = mw.uri.decode(frame:callParserFunction('#urlget', frame.args[1] .. '[' .. key .. ']'))
end
end
end
while true do
last = frame:callParserFunction('#urlget', frame.args[1] .. '[' .. index .. ']', '#null')
if last == frame:callParserFunction('#urlget', frame.args[1] .. '[' .. index .. ']', '#nil') then
last = mw.uri.decode(last)
values[index] = last
elseif index > 0 then
break
end
index = index + 1
end
return mw.text.jsonEncode(values)
end
function p.stack(frame)
local stack = {}
local cur = frame
repeat
table.insert(stack, cur:getTitle())
cur = cur:getParent()
until not cur
return mw.text.jsonEncode(stack)
end
function p.time(frame)
return '[' .. t .. ', ' .. c .. ', ' .. os.time() .. ', ' .. os.clock() .. ']'
end
return p