跳到内容
当前位置:首页>PPT>别再被"假 PPT"骗了—这个开源项目让 AI 真正生成可编辑的原生 PPTX!

别再被"假 PPT"骗了—这个开源项目让 AI 真正生成可编辑的原生 PPTX!

  • 2026-11-04 13:37:52
别再被"假 PPT"骗了—这个开源项目让 AI 真正生成可编辑的原生 PPTX!

用 AI 做 PPT,你可能踩过这个坑。

它给你一份「PPT」,你打开一看,是一堆图片。想改一个字,得从头再来。

还有一种是 HTML 页面,截成图放进 PPT 里。排版挺好看,但你在 PowerPoint 里点不动它。

这两种都是「假 PPT」。 它们的共同点是,你拿到的不是一份能编辑的文件。

上面三张图是一个开源项目生成的实际页面。它生成的是原生 PPTX,能在 PowerPoint、WPS 和 Keynote 里直接改。

它在 GitHub 上有 3600 多 star。

01  「假 PPT」假在哪

先把两者的区别说清楚,再讲它怎么做。

表 1 · 三种「AI 做 PPT」的路子

路子
你拿到什么
能改吗
生成图片
一张张 PNG / JPG
改不了,只能重做
生成 HTML
网页,或者网页截图
在浏览器里能改,进 PPT 就成图
生成原生 PPTX
真的 .pptx 文件
能,各个文本框都能点进去改

第三行的关键在「原生」两个字。

PPTX 就是一个 ZIP 包,里面装的是 XML。各个文本框、每张图、每根线条,都是 XML 里的一个节点,有自己的位置、大小、字体和颜色。

只要 AI 改的是 XML 里的文字节点,而不是重新画一张图,文件就还是可编辑的。

项目做的就是这件事。它准备了 21 套设计好的 PPTX 模板,AI 的活儿是往模板里填字。

02  只换文字,不碰排版

项目的编辑铁律写在 SKILL.md 里,第一条就很硬。

表 2 · 编辑铁律

规则
内容
不改排版
形状的位置、大小、颜色、字体、字号、行距,都不动
占位文字必须换完
成品里不许留 `Question 1`、`Vivamus...`、`Key Words Here` 这类示例词
不许用省略号截断
`max_chars` 是软性参考,不是硬性上限
章节名要一致
改了目录,分章扉页必须同步改
不动用户原文件
所有产出写到新文件

第三条单独说。

一般工具遇到「文字太长放不下」,做法是截断加省略号。项目禁止这么做。 它宁可让你自己回去精简文案,也不让成品里出现「……」。

因为一份汇报 PPT 里出现省略号,比文字挤一点更难看。

第二条也是真痛点。模板里那些 `Lorem ipsum` 占位文字,很多 AI 工具会原样留着,因为它们不认识那是占位符。这个项目把每套模板的占位文字位置都标出来了,AI 必须逐个替换。

为什么「不动排版」这条要写死?

因为排版是设计师的活儿,AI 的活儿是填内容。让 AI 顺手调字号、挪位置,出来的东西十有八九会崩。把职责划清楚,成品才有下限保障。

03  AI 靠一份契约找文本框

这里是整个项目最工程化的部分。

AI 要往模板里填字,得先知道「哪个文本框在讲什么、能放多少字」。项目用一份 `detail.json` 回答这个问题。

表 3 · detail.json 的字段

字段
作用
`page_roles`
哪些页是封面、目录、章节扉页、内容页、结束页
`skip_pages`
模板自带的宣传页,直接跳过
`pages[].text_slots`
各个文本框的语义、方位、能放多少字
`address`
物理寻址,三个数字定位到一段文字
`data_charts`
哪些页有原生图表,最多几个类目、几条系列
`shape_caution_pages`
哪些页的装饰图形不会跟着文字变

第四行是关键。`address` 由三个数字组成,形状 ID、段落索引,还有 run 索引。

这三个数字直接对应 python-pptx 的寻址方式。 AI 不用猜,照着填就行。

第五行解决另一个坑。模板里的环形图、进度条和旗帜这些装饰,是用形状画出来的,不会因为文字变了而自动调整。项目把这类页面单独标出来,提醒 AI 和用户注意。

04  文字出框就拒绝保存

填字最大的风险是文字溢出文本框。

项目为此写了一个出框检测。构建脚本跑完会逐个检查文本框,`--strict` 模式下,只要有出框就直接拒绝保存。

表 4 · 六个脚本

脚本
干什么
`build_pptx.py`
按 edits.json 生成 pptx,带出框检测
`render_slides.py`
把 pptx 渲染成每页一张 PNG
`compute_capacity.py`
从模板算出各个框能放多少字
`check_update.py`
只检查更新,不应用
`apply_update.py`
检查并应用更新
`build_manifest.py`
重算文件清单

第三个脚本的思路可以说说。

`max_chars` 这类容量字段是从模板里量出来的,不靠手写。脚本读模板的文本框尺寸、字号、行距,算出这个框一行能放几个字、最多几行。

这样模板换了字号,容量数据也跟着变,不会脱节。

这里要问一句,为什么容量要算,而不是让 AI 自己看着办?

因为 AI 看不见最终效果。它写文字的时候,只知道自己写了多少字,不知道那个框一行能放几个字。不给它一个数,它就会写出放不下的内容,然后在 PowerPoint 里溢出成一个乱糟糟的样子。

第二个脚本用 LibreOffice 把 pptx 转成 PDF,再用 poppler 的 pdftoppm 拆成 PNG。AI 因此能看见自己做的 PPT 长什么样,而不是盲填。

还有一个校验是同级标题字号一致。同一个层级的标题,字号必须一样,避免出现「这页标题 28 号、那页 24 号」的情况。

05  21 套模板,选之前先看预览

模板是这个项目的主体。21 套,覆盖了大部分中文汇报场景。

这里有个数字对不上。 仓库的简介和 README 都写「17 套模板」,但 SKILL.md 写的是「21 套」。我数了一遍目录,实际是 21 套。

README 那段大概是没跟上更新。文档和代码脱节这种事,在更新快的项目里挺常见。

选模板的流程设计得也有意思。SKILL.md 里定了几条规则。

用户明确指定了模板,直接用。AI 高度确信只有一个最合适,可以用,但要先说一句选了哪个、为什么,给用户否决的机会。

其余所有情况,必须让用户来选。而且要求 AI 给出正好 3 个候选,逐个附上预览图,再额外带一个「都不满意,换一批」。

这里要问一句,为什么要强制让用户选,而不是 AI 直接挑一个?

因为模板的匹配度很难量化。「简约商务」和「麦肯锡风」都是商务,但一个适合周报,一个适合提案。AI 拿不准的时候硬挑,用户很可能拿到一份气质不对的模板。看一眼预览图就能避免的事,没必要赌。

SKILL.md 里还专门写了一句话,不要在没让用户看预览图的情况下,仅凭模糊匹配就自作主张定一个模板。

这句话是在防 AI 的自作聪明。

06  技能自己能更新

项目里有个机制,别的技能包很少见。

SKILL.md 顶部有个红框,要求 AI 在这个会话第一次用到这个技能时,必须先跑一条命令。

```bash

python3 scripts/apply_update.py

```

这条命令会去远端拉最新的 `updates.json`,跟本地的 `VERSION` 比。有新版本就只下载变动的文件,没有就几秒退出。

它是增量的。 项目里 21 套模板加起来一百多兆,但更新时只拉改过的那几个文件。

SKILL.md 里还留了一句提醒。这个技能不会自动 push 更新,必须由 AI 主动 pull。跳过这一步,可能在用过期版本。

把「技能」当成需要维护的软件来设计,这个思路挺对。 模板会更新,规则会改,用户不该每次手动去 clone 一遍。

07  不能拿来商用

表 5 · 两种使用方式

场景
能不能用
个人学习、研究、自己做着玩
可以
商业演示、销售、培训分发、客户提案
不可以
企业内部以营利为目的的使用
不可以
想改成公司自己的模板
需要找作者定制

得说清楚这条。

项目在 README 和 SKILL.md 里都用加粗写了同一件事。

本仓库及内置模板仅供个人学习与研究,禁止商业用途。 包括商业演示、销售、培训分发、客户提案,以及企业内部以营利为目的的使用。

原因也写了,模板素材来自第三方设计师作品,二次商用需要原作者授权。仓库自己声明「没有 PPT 模板的版权」。

字体也有个坑。模板里大量用「微软雅黑」,如果运行环境没装,需要配一条 fontconfig 别名,把「微软雅黑」映射到本机已有的字体。

项目给了一条 fallback 链,顺序是 WenQuanYi Micro Hei、DengXian、Noto Sans SC、PingFang SC。预览图就是用这条链渲染出来的。

不过最终交给你的 .pptx 不用担心字体。 它在 PowerPoint 或 WPS 里打开时,用的是你自己电脑上的字体。

最后说一句

「AI 做 PPT」这件事,过去一年已经做烂了。

大部分产品解决的是「怎么快速生成一堆好看的页面」。但职场人要的不是好看的页面,是一份能交上去、领导还能接着改的文件。

项目选的是后面这条难走的路。只改文字不动排版,量出各个框的容量,出框就拒绝保存。

它没有让 AI 学会设计,只是把设计的活儿提前做完了。

你有没有遇到过 AI 给你的「PPT」打不开或者改不动的情况?

项目地址

https://github.com/GordenSun/GordenPPTSkill

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-11-06 22:59:55 HTTP/1.1 GET : http://h.sjds.net/a/574222.html
  2. 运行时间 : 0.072866s [ 吞吐率:13.72req/s ] 内存消耗:4,313.38kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=1cf8b825e759ddab96e0ddc469d93943
  1. /www/wwwroot/h.sjds.net/public/index.php ( 0.79 KB )
  2. /www/wwwroot/h.sjds.net/vendor/autoload.php ( 0.17 KB )
  3. /www/wwwroot/h.sjds.net/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /www/wwwroot/h.sjds.net/vendor/composer/platform_check.php ( 0.90 KB )
  5. /www/wwwroot/h.sjds.net/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /www/wwwroot/h.sjds.net/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /www/wwwroot/h.sjds.net/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /www/wwwroot/h.sjds.net/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /www/wwwroot/h.sjds.net/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /www/wwwroot/h.sjds.net/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /www/wwwroot/h.sjds.net/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /www/wwwroot/h.sjds.net/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /www/wwwroot/h.sjds.net/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /www/wwwroot/h.sjds.net/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /www/wwwroot/h.sjds.net/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /www/wwwroot/h.sjds.net/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /www/wwwroot/h.sjds.net/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /www/wwwroot/h.sjds.net/app/provider.php ( 0.19 KB )
  23. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /www/wwwroot/h.sjds.net/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /www/wwwroot/h.sjds.net/app/common.php ( 0.03 KB )
  27. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /www/wwwroot/h.sjds.net/config/app.php ( 0.95 KB )
  30. /www/wwwroot/h.sjds.net/config/cache.php ( 0.78 KB )
  31. /www/wwwroot/h.sjds.net/config/console.php ( 0.23 KB )
  32. /www/wwwroot/h.sjds.net/config/cookie.php ( 0.56 KB )
  33. /www/wwwroot/h.sjds.net/config/database.php ( 2.48 KB )
  34. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /www/wwwroot/h.sjds.net/config/filesystem.php ( 0.61 KB )
  36. /www/wwwroot/h.sjds.net/config/lang.php ( 0.91 KB )
  37. /www/wwwroot/h.sjds.net/config/log.php ( 1.35 KB )
  38. /www/wwwroot/h.sjds.net/config/middleware.php ( 0.19 KB )
  39. /www/wwwroot/h.sjds.net/config/route.php ( 1.89 KB )
  40. /www/wwwroot/h.sjds.net/config/session.php ( 0.57 KB )
  41. /www/wwwroot/h.sjds.net/config/trace.php ( 0.34 KB )
  42. /www/wwwroot/h.sjds.net/config/view.php ( 0.82 KB )
  43. /www/wwwroot/h.sjds.net/app/event.php ( 0.25 KB )
  44. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /www/wwwroot/h.sjds.net/app/service.php ( 0.13 KB )
  46. /www/wwwroot/h.sjds.net/app/AppService.php ( 0.26 KB )
  47. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /www/wwwroot/h.sjds.net/vendor/services.php ( 0.14 KB )
  53. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /www/wwwroot/h.sjds.net/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /www/wwwroot/h.sjds.net/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /www/wwwroot/h.sjds.net/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /www/wwwroot/h.sjds.net/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /www/wwwroot/h.sjds.net/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /www/wwwroot/h.sjds.net/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /www/wwwroot/h.sjds.net/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /www/wwwroot/h.sjds.net/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /www/wwwroot/h.sjds.net/app/Request.php ( 0.09 KB )
  84. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /www/wwwroot/h.sjds.net/app/middleware.php ( 0.25 KB )
  86. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /www/wwwroot/h.sjds.net/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /www/wwwroot/h.sjds.net/route/app.php ( 1.72 KB )
  100. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /www/wwwroot/h.sjds.net/app/controller/Index.php ( 4.81 KB )
  104. /www/wwwroot/h.sjds.net/app/BaseController.php ( 2.05 KB )
  105. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /www/wwwroot/h.sjds.net/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /www/wwwroot/h.sjds.net/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /www/wwwroot/h.sjds.net/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /www/wwwroot/h.sjds.net/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /www/wwwroot/h.sjds.net/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /www/wwwroot/h.sjds.net/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /www/wwwroot/h.sjds.net/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /www/wwwroot/h.sjds.net/runtime/temp/c1d6e8c94b2c2fa10e259903674c804d.php ( 8.11 KB )
  140. /www/wwwroot/h.sjds.net/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000624s ] mysql:host=172.18.0.4;port=3306;dbname=h_sjds;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000834s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000443s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000355s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000518s ]
  6. SELECT * FROM `set` [ RunTime:0.000266s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000719s ]
  8. SELECT * FROM `article` WHERE `id` = 574222 LIMIT 1 [ RunTime:0.000411s ]
  9. UPDATE `article` SET `lasttime` = 1793977195 WHERE `id` = 574222 [ RunTime:0.001848s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000348s ]
  11. SELECT * FROM `article` WHERE `id` < 574222 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000546s ]
  12. SELECT * FROM `article` WHERE `id` > 574222 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000430s ]
  13. SELECT * FROM `article` WHERE `id` < 574222 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000613s ]
  14. SELECT * FROM `article` WHERE `id` < 574222 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000709s ]
  15. SELECT * FROM `article` WHERE `id` < 574222 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000749s ]
0.083130s