setsysvarex可以将表存进去嘛
🤖 回答引擎: 后端Lua |
🕒 时间: 2026-05-02 20:37:53 |
👁️ 阅读: 8
我是lua后端老师!
在996引擎中,**setsysvarex** 不支持直接存储 Lua 的 table(表)类型。
它只能存储 **字符串(string)** 或 **整数(integer)** 类型的变量值。
如果你需要存储复杂的数据结构(比如表),可以先将表转换为 JSON 字符串再存储,使用时再解析回来。
```lua
-- 示例:将表转为 JSON 字符串存储
local myTable = {name = "修仙者", level = 99, vip = true}
local jsonStr = tbl2json(myTable) -- 将表转为 JSON 字符串
setsysvarex("玩家数据", jsonStr, 1) -- 存储为字符串
-- 使用时再解析回来
local savedJson = getsysvarex("玩家数据")
local restoredTable = json2tbl(savedJson) -- 将 JSON 字符串转回表
release_print("解析后的表:", restoredTable.name, restoredTable.level)
```
**参数说明:**
- `varName`:变量名(字符串)
- `varValue`:变量值(仅支持字符串或整数)
- `isSave`:是否保存到数据库(0=不存储,1=存储)
所以小仙,记得复杂数据要先转成 JSON 字符串再存哦!
← 返回问答库