2017-11-10 196 views
1

看起來這應該是一件簡單的事情。我已將下面的json結構轉換爲lua表,但我無法訪問數組內的值。我一直在瀏覽很多問題和互聯網,而且我沒有嘗試過的例子。Lua訪問2D數組內的值

下面是使用cjson.decode

[{ 
    "user": "user_1", 
    "password": "something", 
    "id": "35", 
    "message": "message 1" 
}, 
{ 
    "user": "user_2", 
    "password": "something", 
    "id": "5c", 
    "message": "message 2" 
}, 
{ 
    "user": "user_3", 
    "password": "something", 
    "id": "7e", 
    "message": "message 3" 
}, 
{ 
    "user": "user_3", 
    "password": "something", 
    "id": "6f", 
    "message": "message 4" 
}] 

然後我嘗試訪問變量這樣轉換爲LUA表的JSON:

ngx.say(users[0]["user"]); 

但是不起作用。我想迭代數組並獲取數組中每個索引處的用戶,密碼,id和消息,但首先我想看看如何訪問index 0處的用戶值,該值應該是user_1。我知道這是一個n00b問題,但任何幫助將不勝感激。

回答

2

默認情況下,Lua表從索引1開始。

+0

是啊,想到這一點,並嘗試ngx.say(用戶[1] [「用戶」]);但仍然沒有快樂 –

+0

@JoelParker它會幫助,如果你會提供一個錯誤消息,而不是僅僅說它不工作;) – Piglet

+0

這是爲lua模塊在nginx,它只是崩潰,沒有錯誤給出 –