lua實現php的print r 函式功能

2021-05-27 13:36:49 字數 1192 閱讀 2322

-- example usage:

---- require 'print_r'

-- a = , list=}

-- pr(a, 'my table')

----my table =

--| label =

--}--

-- this is freeware

function pr (t, name, indent)

local tablelist = {}

function table_r (t, name, indent, full)

local id = not full and name

or type(name)~="number" and tostring(name) or '['..name..']'

local tag = indent .. id .. ' = '

local out = {} -- result

if type(t) == "table" then

if tablelist[t] ~= nil then table.insert(out, tag .. '{} -- ' .. tablelist[t] .. ' (self reference)')

else

tablelist[t]= full and (full .. '.' .. id) or id

if next(t) then -- table not emptyempty

table.insert(out, tag .. '')

else table.insert(out,tag .. '{}') end

endelse

local val = type(t)~="number" and type(t)~="boolean" and '"'..tostring(t)..'"' or tostring(t)

table.insert(out, tag .. val)

endreturn table.concat(out, '\n')

endreturn table_r(t,name or 'value',indent or '')

endfunction print_r (t, name)

print(pr(t,name))

end

php中print r和echo區別

print r可以列印乙個物件 echo 只能輸出字串 舉例 十八哥xml第40集 建立乙個dom物件並讀取xml檔案到記憶體中 dom new domdocument 1.0 utf 8 dom load book.xml 建立乙個xpath物件 xpath new domxpath dom sq...

Lua實現PHP的include函式

最近在參與乙個基於c lua的專案,用lua實現單元測試時需要在測試 內對單元測試庫檔案進行載入,目的是希望做到在任何測試檔案內都可以執行測試,而不是必須在特定的入口執行.但是使用lua內建require函式載入會失敗,因為其是lua實現module功能的乙個函式所以會有一些和模組相關的特性,在定製...

print r與var dump的區別

colors array red blue green yellow print r colors echo var dump colors 輸出結果如下 array 0 red 1 blue 2 green 3 yellow array 4 var dump 可以使用任何變數,包括字串,陣列,數字...