使用lua實(shí)現(xiàn)php的var_dump()函數(shù)功能
習(xí)慣了php中的var_dump()函數(shù),而如今寫lua的時(shí)候總習(xí)慣使用var_dump()函數(shù),于是就自己動(dòng)手寫了一個(gè)類似功能的var_dump()函數(shù)。
function var_dump(data, max_level, prefix)
if type(prefix) ~= "string" then
prefix = ""
end
if type(data) ~= "table" then
print(prefix .. tostring(data))
else
print(data)
if max_level ~= 0 then
local prefix_next = prefix .. " "
print(prefix .. "{")
for k,v in pairs(data) do
io.stdout:write(prefix_next .. k .. " = ")
if type(v) ~= "table" or (type(max_level) == "number" and max_level <= 1) then
print(v)
else
if max_level == nil then
var_dump(v, nil, prefix_next)
else
var_dump(v, max_level - 1, prefix_next)
end
end
end
print(prefix .. "}")
end
end
end
相關(guān)文章
Ruby元編程技術(shù)詳解(Ruby Metaprogramming techniques)
這篇文章主要介紹了Ruby元編程技術(shù)詳解(Ruby Metaprogramming techniques),本文講解了11個(gè)關(guān)于元編程的技術(shù)和技巧,需要的朋友可以參考下2015-04-04Lua中的協(xié)同程序之resume-yield間的數(shù)據(jù)返回研究
這篇文章主要介紹了Lua中的協(xié)同程序之resume-yield間的數(shù)據(jù)返回研究本文講解了resume的參數(shù)、resume函數(shù)的第二個(gè)返回值、yield的返回值等內(nèi)容,需要的朋友可以參考下2014-09-09C++中調(diào)用Lua配置文件和響應(yīng)函數(shù)示例
這篇文章主要介紹了C++中調(diào)用Lua配置文件和響應(yīng)函數(shù)示例,本文使用Lua文件作為配置文件,并寫了幾個(gè)響應(yīng)函數(shù)以便在C++中使用,需要的朋友可以參考下2015-07-07Lua之協(xié)同程序coroutine代碼實(shí)例
這篇文章主要介紹了Lua之協(xié)同程序coroutine代碼實(shí)例,本文給出的代碼示例較為復(fù)雜,需要對(duì)Lua協(xié)同程序有一定的了解方能看懂,需要的朋友可以參考下2015-04-04Lua中的閉合函數(shù)、非全局函數(shù)與函數(shù)的尾調(diào)用詳解
這篇文章主要介紹了Lua中的閉合函數(shù)、非全局函數(shù)與函數(shù)的尾調(diào)用詳解,本文對(duì)這2種函數(shù)和尾調(diào)用做了深入研究,需要的朋友可以參考下2014-09-09