lua cjson编码nil字段

时间:2017-11-29 03:14:46

标签: lua cjson

我有一个lua表,例如:

local _table = {}

_table["name"] = "some user name"    
_table["phone"] = nil

ngx.say(cjson.encode(_table))

ngx.say输出如下:

{"name":"some user name"}

正如您所看到的,_table中的电话字段已被忽略!如何设置encoding-options以在cjson编码处理期间包含任何nil字段。 如:

{"name":"some user name", "phone": null}

1 个答案:

答案 0 :(得分:4)

nil分配给表字段意味着该表字段将被视为未设置,即从Lua的角度来看它停止存在。 CJSON附带了一个代表null的专用值,而是使用它:

_table["phone"] = cjson.null