主頁 > 知識庫 > 使用lua實現(xiàn)php的print_r()函數(shù)功能

使用lua實現(xiàn)php的print_r()函數(shù)功能

熱門標(biāo)簽:Linux服務(wù)器 呼叫中心市場需求 服務(wù)外包 AI電銷 地方門戶網(wǎng)站 網(wǎng)站排名優(yōu)化 鐵路電話系統(tǒng) 百度競價排名

之前寫了一些類似php的函數(shù),下面再來一個print_r()函數(shù),代碼如下:

復(fù)制代碼 代碼如下:

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 empty  
                    table.insert(out, tag .. '{')  
                    for key,value in pairs(t) do  
                        table.insert(out,table_r(value,key,indent .. '|  ',tableList[t]))  
                    end  
                    table.insert(out,indent .. '}')  
                else table.insert(out,tag .. '{}') end  
            end  
        else 
            local val = type(t)~="number" and type(t)~="boolean" and '"'..tostring(t)..'"' or tostring(t)  
            table.insert(out, tag .. val)  
        end  
        return table.concat(out, '\n')  
    end  
    return table_r(t,name or 'Value',indent or '')  
end  
function print_r (t, name)  
    print(pr(t,name))  
end  
 
local a = {x=1, y=2, label={text='hans', color='blue'}, list={'a','b','c'}}  
 
print_r(a) 

您可能感興趣的文章:
  • php中理解print EOT分界符和echo EOT的用法區(qū)別小結(jié)
  • PHP學(xué)習(xí)之輸出字符串(echo,print,printf,print_r和var_dump)
  • 用js寫了一個類似php的print_r輸出換行功能
  • php輸出echo、print、print_r、printf、sprintf、var_dump的區(qū)別比較
  • PHP echo,print,printf,sprintf函數(shù)之間的區(qū)別與用法詳解
  • 用nodejs實現(xiàn)PHP的print_r函數(shù)代碼
  • PHP中echo,print_r與var_dump區(qū)別分析
  • php中print(),print_r(),echo()的區(qū)別詳解

標(biāo)簽:仙桃 湘潭 銅川 湖南 崇左 黃山 蘭州 衡水

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《使用lua實現(xiàn)php的print_r()函數(shù)功能》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266