Loading...
This site is best viewed in a modern browser with JavaScript enabled.
Something went wrong while trying to load the full version of this site. Try hard-refreshing this page to fix the error.
table.foreach在ngx_lua中应该咋输出?
lhmwzy
string.split = function(str, pattern)
pattern = pattern or "[^%s]+"
if pattern:len() == 0 then pattern = "[^%s]+" end
local parts = {__index = table.insert}
setmetatable(parts, parts)
str:gsub(pattern, parts)
setmetatable(parts, nil)
parts.__index = nil
return parts
end
-- example 1
str = "no, separators ,in ,this, string"
parts = str:split( "[^,]+" )
ngx.say( # parts )
local str = table.foreach(parts, print)
ngx.say(str)
如上代码,在openresty中,str为nil.
string.split = function(str, pattern)
pattern = pattern or "[^%s]+"
if pattern:len() == 0 then pattern = "[^%s]+" end
local parts = {__index = table.insert}
setmetatable(parts, parts)
str:gsub(pattern, parts)
setmetatable(parts, nil)
parts.__index = nil
return parts
end
-- example 1
str = "no, separators ,in ,this, string"
parts = str:split( "[^,]+" )
print( # parts )
table.foreach(parts, print)
这个代码在lua中有效。
lhmwzy
嗯,应该类似于这样的
table.foreach(parts, ngx.print)
shrimp0597
我一般用lua的cjson模块来输出
ngx.print(cjson.encode(table))
不过没有index哈……
在 2012年3月13日 下午1:03,lhmwzy
<
lh...@gmail.com
>
写道:
嗯,应该类似于这样的
table.foreach(parts, ngx.print)