Lua:从函数中获取函数外部的局部变量

Lua: Get Locals Outside of Function From A Function

我想在调用某个函数 (getlenv) 时获取环境中的所有局部变量 (debug.getlocal),但是当我调用此函数时它只获取函数内部的局部变量而不是在函数之外。这可能吗?如果是怎么办?

我现在有代码

function getlenv()
    local i = 1
    repeat
        local k, v = debug.getlocal(1, i)
        if k then
            print(k, v)
            i = i + 1
        end
    until nil == k
end

getlenv()

已解决,我只是愚蠢,只需要改变 local k, v = debug.getlocal(1, i)local k, v = debug.getlocal(2, i) 将局部变量置于函数 o_0

之外