where('skey', $key); return $row ? $row['sval'] : $default; } /** 批量读取为 [skey => sval] */ public function allKV(): array { $out = []; foreach ($this->all() as $r) $out[$r['skey']] = $r['sval']; return $out; } /** 设置(不存在则新增) */ public function set(string $key, $val, string $group = 'site'): void { $row = $this->where('skey', $key); if ($row) { $this->update($row['id'], ['sval' => $val, 'sgroup' => $group]); } else { $this->insert(['skey' => $key, 'sval' => $val, 'sgroup' => $group]); } } /** 批量保存 */ public function saveMany(array $pairs, string $group = 'site'): void { foreach ($pairs as $k => $v) $this->set($k, $v, $group); } }