关键字替换运维管控
批量替换 zsadmin 程序数据库关键字的后台工具插件。
¥2.00抵扣
一次购买,永久使用
详情介绍
关键字替换 (kwreplace)
批量替换 zsadmin 程序数据库关键字的后台工具插件。
功能特性
- 字段可勾选 —— 支持按表勾选任意文本字段进行替换
- 时间可筛选 —— 按创建/更新时间限定替换范围,精准定位
- 先预览再执行 —— 预览模式统计各表/字段匹配条数,确认无误后再执行实际替换
- 表前缀自动适配 —— 使用 ThinkPHP
Db::name()+ 查询构造器,自动适配当前数据库的表前缀 - 事务包裹 + 回滚 —— 所有替换在数据库事务中执行,任一字段更新失败则全部回滚
- SQL 注入防护 —— 使用
Db::getPdo()->quote()严格转义查找/替换字符串,字段名白名单 + 正则校验 - 操作日志 —— 执行成功/失败均记录到宿主日志
支持的表与字段
| 数据表 | 中文名 | 可替换字段 |
|---|---|---|
community_topic | 社区帖子 | title, content, softwareupdate, videourl |
community_reply | 社区回复 | content, quote_excerpt |
community_category | 社区分类 | name, description, seotitle, seokeywords, seo_description |
community_tag | 社区标签 | name |
community_page | 社区单页 | title, content, seotitle, seokeywords, seo_description |
community_report | 社区举报 | topic_title, reason |
插件会自动检测目标表是否存在,不存在则跳过并记录告警日志。
安装与启用
- 将
kwreplace目录放入themes/kwreplace/ - 在后台 插件管理 中启用插件即可
- 插件启用后会自动:
- 在 plugins/kwreplace/ 生成路由胶水文件(卸载时自动删除)
- 在后台左侧菜单注册「关键字替换」入口
使用方法
第一步:填写查找与替换
- 查找关键字:要被替换的原文内容(必填)
- 替换为:替换后的新内容(留空表示删除该关键字)
第二步:可选时间筛选
- 选择时间字段(createtime / updatetime)
- 填写开始和结束日期(含当天)
- 提供「近7天 / 近30天 / 清空」快捷按钮
第三步:勾选字段
- 按表名分组展示,勾选要操作的字段
- 表名前的复选框可一键全选该表下所有字段
- 底部显示已选字段数量
第四步:预览匹配
- 点击「预览匹配条数」,系统在所有勾选的表/字段中统计 LIKE 匹配数
- 展示每个字段的具体匹配条数,帮助确认替换范围是否正确
第五步:执行替换
- 确认预览结果无误后,点击「执行替换」
- 二次确认弹窗后,事务内执行
UPDATE ... SET field = REPLACE(field, ?) - 展示各表/字段实际影响行数
安全说明
- 必须先备份数据库! 插件会直接修改数据库内容
- 执行过程中任一更新失败将自动回滚整个事务,不会产生脏数据
- 查找字符串中的 SQL 特殊字符(
%,_,\)已做 LIKE 转义 - 字段名使用白名单 + 正则校验,防止注入非法字段
- 插件仅修改已勾选的字段,不会改动未选择的表/字段
技术实现
- 框架:ThinkPHP 8.x
- PHP 版本:8.2+
- 无新增数据表,纯工具类插件
- 静态资源位于
themes/kwreplace/static/,需复制到宿主public/static/kwreplace/下(或由宿主自动处理)
作者
kuakeba.cn
更新记录 (1)
-
v1.0.0
2026-10-22
正式发布
QQ官方交流群