乐于分享
好东西不私藏

为什么你给 AI 配的"记忆",过两天它好像还是不记得你

为什么你给 AI 配的"记忆",过两天它好像还是不记得你

用 AI 写代码的人,多半都遇到过这种小别扭:上周明明跟它说过项目用 Go、错误处理走自定义类型,这周新开一个会话,它还是把日志库写成了 logrus,错误处理一律 return err 裸着抛。你愣一下,提醒它一句"我们不是说过用 slog 吗",它立刻"道歉",姿态摆得很到位,下一段代码改对了。再过两天,又错回去。

一开始我以为是模型记忆不够聪明,再后来才发现:AI 的记忆从来不是智商问题,是工程问题。

它能不能记住你说过的话,下次能不能调出来,新决策做出来的时候听不听话,这些都不是模型脑子里的事,是模型外面那一整套工程系统的事。想通了这一点,"AI 怎么又不记得了"这件事的真相才浮上来:模型自己根本没记任何东西,只有它身边那个替它记笔记的"秘书"在替它做这一整套事。秘书做得到位,它就显得记性好;秘书做得糙,它就显得健忘。

再回头看那些问题,会发现它们不是同一种失灵,而是这套秘书系统里几个不同的环节,在以不同的方式出错。

一、先把反直觉的事挑明

模型本身是无状态的。

这件事大多数人都听说过。但听说过和真的想清楚是两回事。一旦真的当回事去想,你会发现"AI 加了记忆功能"这句话听起来像是模型变了,但实际上其实模型一点没变,变的是它外面那一圈东西。

那一圈东西其实并不复杂。模型外面挂了一个外部存储,再挂一段自动注入逻辑。你说话的时候,系统判断哪句值得记、写进去;下一次开新会话,系统从里面捞几条相关的,拼进 System Prompt。模型"看到"了这段被拼进来的文本,于是表现得像是记得你。把这段文本删掉,它立刻就不记得了。

换言之:模型是个有失忆症的同事,每次开会前你都得把昨天的纪要重新念给他听。所谓"AI 加了记忆功能",不是治好了他的失忆症,而是给他配了个秘书,每次开会前替他把相关的便签念一遍。

它的"认得你"不是脑子里的认得,是桌上那张便签条上的认得。撕掉便签,它立刻就不认得你了。

开头那些反复出现的问题,都能在这套秘书系统里找到对应的位置。一句话先变成一张便签,再从一堆便签里被挑出来念给模型听,每一步都可能出岔。

二、第一种失灵:它记住的,不是你让它记住的

秘书要做的第一件事,是从一段对话里挑出哪句话值得抄下来。

这件事比想象中难。你和 AI 一次完整的对话可能几十轮,绝大多数都是临时性的,改个变量名、问个参数含义、加个空行。这些当下有用,但没有任何跨会话的价值,下次你不会需要知道自己曾经改过一个变量名。真正值得跨会话留下来的,往往就那么一两句:某一轮你说"我们决定用 gRPC 而不是 REST",某一轮你说"错误消息一律用英文"。秘书要在几十句"没价值的"里面,把这一两句"有价值的"挑出来。

现在主流做法是让模型自己挑,给它一段提取指令,告诉它什么算有跨会话价值,什么算临时性,让它在对话结束后自己判断、自己写入。这套思路是合理的,但落到一段真实对话上,会发现它有几种系统性的偏差,秘书自己察觉不到。

它分不清你是在"决定"还是在"讨论"。你只是在比较 A 和 B 各自的取舍,最后选了 A。但秘书在听的时候,会把"B 适合某某场景"这种像知识陈述的句子也当成事实抄下来。下次便签翻出来一念,你会发现 AI 居然在推荐 B,它不是不记得你选了 A,是它的便签里同时记着 A 和 B,今天没翻到 A 那张而已。

它也分不清你是在表扬还是在吐槽。你嫌某个库难用,秘书读到的是"用户提到了某某库"。语气这种东西落到便签上几乎全没了,一条吐槽就这么被反向记成了一条偏好。

它更分不清"现在"和"以前"。你随口一句"这个项目用 Go",是哪个项目?哪个时期?这次决定还是事后回忆?秘书没有这种分辨力,只会把句子原封不动地存下来,等下次原封不动地念出去。你当时的语气、上下文、犹豫,全都不在便签条上。

所以你以为它记住的,和它真的记住的,常常不是同一件事。AI 后来"记错了"的那些瞬间,很多时候不是模型推理错了,是它前面那张便签从一开始就抄歪了。错的地方不在脑子里,在那张纸上。

三、第二种失灵:它记住了,但下次没拿出来

就算秘书这一轮抄得很准,下一轮他还得做另一件事:从一堆便签里挑出今天该念的那几张。这一关也容易出岔。

便签少的时候问题不大,全塞进上下文让模型自己看就行了。但几个月、几个项目下来,便签堆得太厚,全塞已经塞不下了,秘书必须仔细挑选。主流的挑法是语义检索,把你今天的问题和每张便签都映射成向量,按距离匹配。听起来很合理,离得近的就是相关的,远的就是不相关的。

但这里有一个挺隐蔽的坑:语义相似不等于任务相关。

你今天说"加个缓存",秘书翻遍便签,找出语义最像"缓存"的那几张。但这几张里,可能混着另一个项目的 Redis 配置、之前讨论过但没采用的方案、你曾经吐过槽的某个库。它们和今天这件事都"有点像",但都不是真正需要的那几张。

更糟的是,你话说得越短,挑得越离谱。新会话第一句"帮我写个 API",几乎和便签堆里所有便签都"有点像",因为"API"这词太宽泛了,这时候秘书基本上是在抓阄。反过来,你话说得越具体、上下文越多,秘书才挑得准。所以新会话刚开口的那几句,宁愿啰嗦一点,把项目背景、现在在做什么、卡在哪儿,先交代清楚。这不是为了让模型懂,模型当然懂,是为了让秘书能挑对便签。

你以为它记不得,其实它记得,只是这次没翻到那张。便签躺在桌上,但桌上的纸太多了,今天能不能挑对,和你这句话怎么提、上下文给得够不够,关系比想象中要大。

四、第三种失灵:新便签和旧便签打架

时间再拉长一点,你会撞上第三种失灵,而且它比前两种都更难受。

世界是会变的。上周你说前端用 React,这周项目讨论后决定迁移到 Vue,过几周某个模块由于历史原因又保留了 Angular。这三件事都是真实发生过的,三张便签都被秘书认认真真写下来、整整齐齐摆在桌上。下次你让 AI 写一个新组件,秘书翻便签,三张都"和前端有关",三张都被翻了出来。模型看到三张相互冲突的便签,多半会基于离自己语义最近的那一张写代码,而那张可能恰好是早该作废的那一条。

这件事的本质,是记忆系统天然是累积式的,不是覆盖式的。它擅长"再加一条",不擅长"作废一条"。

人类同事身上不存在这个问题,新决策做出来的那一刻,旧方案就会自然地从他脑子里沉下去,不需要谁去手动撕。但秘书不会。秘书桌上是只增不减的,今天加一张,明天加一张,旧的那张除非有人专门去撕,否则会一直躺在那里,和新的一起被翻出来念。

所以很多人会有那种"AI 怎么又冒出一段早就废弃的方案"的体验,不是它记错了,是它记得太多。AI 不像人类同事会随着新决定做出而自动忘掉旧的,它的便签只增不减。真正让 AI 看起来"忘性大"的,往往不是它忘了,而是它记得太多,记得连那些早就该被撕掉的也一起记着。

还有一种更慢的过时。不是被新决策推翻,是被时间一点点蚀掉的。项目用 Go 1.20 过一年变成了 1.22,上次讨论的连接池大小过几个月已经无人在意。这些便签没人主动去推翻,但它们的有效性是在悄悄衰减的。秘书察觉不到,除非你显式去告诉他。

这里有个反问绕不过去:现在不是已经有结构化记忆、KV 覆盖那一套了吗?同一个键写进去,旧值不就自动被替掉了。

这一层升级是真的,但它把问题挪了个地方,没把问题解决。判断"这条该不该覆盖、该挂在哪个键下"这件事,本身又是一次"抄"。上周写下的"前端用 React"和这周说的"这个新模块用 Vue",到底是覆盖同一个键、是另起一个新格子放进去、还是干脆共存?这个判断还是秘书在做,秘书还是会判断错。结构化只是把第三关的难题,倒回第一关重新来一遍。便签从手写纸条变成带字段的卡片,秘书还是那个秘书。长上下文也是同样的道理。模型上下文从几万 token 涨到几百万,看起来可以把所有便签一股脑塞进去、不用挑了。但塞得进去不等于看得清楚。上下文一长,注意力就被摊薄了,中间那些容易被冲淡,相互冲突的内容塞在一起反而更乱。所以真到了几百万 token 这个量级,反而更需要秘书在塞之前先挑一遍——只是这位秘书的工作,从以前的"从几十张里挑几张"变成了现在的"从几百万张里挑几千张"。台子大了,活儿没少。


讲到这里,三种失灵讲完了。回过头看,它们其实是同一句话的三个侧面:

AI 的记忆从来不是智商问题,是工程问题。

第一种失灵是"抄"这一步出了岔,第二种是"挑"这一步出了岔,第三种是"撕"这一步根本就没人做。每一种都不是模型推理错了,模型每一步推理都是它能力之内的最优解,错的是它身边那张纸、那只挑纸的手、那只本该撕掉旧纸但没去撕的手。

你不是在和一个时聪明时糊涂的智能体打交道。你是在和一个失忆者打交道,而它今天能看到什么、看不到什么,是被外面那套工程系统严格规定好的。它今天的表现,不是它今天聪不聪明决定的,是今天那叠纸怎么递到它手上决定的。

五、那要怎么用

讲到这里,你可能会觉得这个秘书一身毛病。但我自己的态度是:该开还是开。比起每次新会话都从头讲一遍项目结构、技术选型、代码规范,有秘书还是比没秘书强,哪怕这个秘书会犯错。冷启动的代价,多数时候比被一张错便签误导的代价要高。

只是用法跟默认姿势不太一样。

默认姿势是把它当成一个"会自动学会你"的智能体,你正常聊,它自己悟。这个姿势在前期还行,越用到后面越不灵。真正能扛住时间的姿势,是反过来的:把它当成一套需要你主动维护的工程系统,不指望它自己变好,而是指望你主动管理它桌上的那叠纸。

这件事一旦想通,落到日常用法上其实就那么几条。

第一是主动喂比被动提准。重要的事顺手让它记一下,不要全指望秘书自己从对话里淘出来。尤其是新项目的第一次对话,值得多花一点时间,把骨架、技术选型、约定一次性交代清楚,比后面零散地在几十次对话里反复提到划算得多。

第二是隔一段时间翻一翻便签。这是大多数人不做但回报很高的一件事。一张错便签会持续地、悄悄地影响 AI 的行为,等你意识到的时候,往往已经被它带偏好一阵子了。

第三是把"团队规则"和"个人记忆"分开放。判断标准就一个,这是团队共识还是你的个人默契。共识的东西放规则文件、进 Git,让所有人都看得到;记忆这一层只放属于你和这个 AI 之间的东西。

这几条听起来不复杂,但它们背后有一个共同的姿态转变:你不是在使用一个有记忆的 AI,你是在替一个没有记忆的 AI,管理它的记忆。 这两件事差得很远。前者你是甲方,等它服务你;后者你是它的协作者,是你和它一起在维护这套系统能不能跑下去。

至于这套姿态背后更细的工程选择,三个主流产品(ChatGPT、Cursor、Claude)在这件事上各自做了什么权衡、检索这一关里那些更隐蔽的细节、记忆和规则文件之间到底该怎么分工,我在书里展开聊了,这里就点到为止。

六、AI 没有记忆,对人意味着什么

讲完工程,再往上想一层。

模型还会继续变聪明,便签会越记越多,检索会越做越准,结构化做得越来越细,上下文窗口也会越撑越大。但只要"无状态推理"这个底层架构不变,秘书这套东西就还会一直在那里。

而这件事的另一面,常常被忽略,

AI 越擅长记,人越要擅长帮它忘。

三种失灵里,第三种最难治,因为它不是技术问题,是判断问题:哪一张便签该作废了?哪一条决策已经被新的覆盖了?哪一个偏好已经过时了?这些事情秘书做不出来,模型也做不出来,只有你自己知道。模型越能记,便签堆得越厚,"该被撕掉但没被撕掉"的那一部分就越多,它的失灵也就越隐蔽。

所以这一代 AI 协作里,真正在拉开差距的能力,可能不是把 prompt 写得花、把工具配得炫,而是这几件事,

知道哪些事值得让它记,哪些不值得;知道一段时间之后,哪些旧便签该被作废了;知道在它桌上那叠纸越堆越厚的时候,主动去翻一翻、撕一撕。

这是一种新的工作能力。它还没有一个准确的名字,也很难被速成。但它会越来越值钱,因为在 AI 越来越擅长"加"的时代里,主动决定它该减什么这件事,没有人能替代你做。

模型还会继续变聪明。但它聪明到什么程度,你都得替它做这件事。理解这一点,比指望它哪天突然变完美要靠谱得多。


我把这两年关于 AI 编程的一些理解整理成了一本开源书《AI 编程的第一性原理》,这篇文章里讲到的"秘书 + 便签"那一套秘书系统具体怎么设计、三个主流产品(ChatGPT、Cursor、Claude)在这件事上各自做了什么权衡、记忆和规则文件之间到底该怎么分工、检索这一关里那些更隐蔽的工程细节,这些都在第 8 章里完整展开了。

如果你也在用 AI 写代码,欢迎来读:https://github.com/caozhiyi/ai-programming-book

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