乐于分享
好东西不私藏

code-review-graph:让 AI 代码审查只读它该读的——19万星的开源项目深度解析

code-review-graph:让 AI 代码审查只读它该读的——19万星的开源项目深度解析

作者:艾瑞Eric


前言

当你用 AI 工具做代码审查时,有没有遇到过这种尴尬——

AI 翻了半天整个代码库,最后给出一堆无关的废话?

问题不在 AI 不够聪明,而在于它被迫读了太多不该读的东西。一个 10 万行代码的仓库,AI 做一次 PR review,要读取多少 token?答案是:非常多,多到浪费。

今天介绍的这个项目,就是来解决这个问题的。

code-review-graph,GitHub Star 数 19,095(还在快速增长),Python 语言,MIT 协议,专注于一件事——让 AI 编码工具只读它该读的内容


一、项目概览

1.1 基本信息

       
                                           
指标参数
项目名称code-review-graph
GitHubgithub.com/tirth8205/code-review-graph
Star19,095
Fork2,044
语言Python 3.10+
协议MIT
官网code-review-graph.com
当前版本v2.3.6
创建时间2026-02-26
       
     

1.2 核心定位

一句话描述: Local-first 的代码智能图谱,专为 MCP 和 CLI 设计,构建代码库的持久化结构地图,让 AI 编码工具只读真正重要的内容。

核心数字:

  • • 支持 13+ 种主流 AI 编码平台
  • • 支持 30+ 种编程语言
  • • 中位 Token 节省:~82 倍(最高 528 倍)
  • • 增量更新:2,900 文件项目,索引时间 < 2 秒

二、设计哲学:代码即图谱

2.1 核心问题

当前 AI 编码工具的最大痛点,不是"AI 不够聪明",而是上下文窗口被大量无意义的内容填满

当你让 AI 做代码审查时,它面临的选择是:

  • 方案 A:读取整个代码库(浪费大量 Token)
  • 方案 B:用模糊的关键词搜索(容易遗漏重要上下文)

code-review-graph 提出了第三种方案:

让 AI 知道代码的结构——哪些文件调用了哪些函数,哪些模块依赖哪些模块,哪些测试覆盖哪些功能——然后只读真正相关的部分。

2.2 核心理念:Code is a Graph

code-review-graph 的设计哲学基于一个洞察:代码从来不是文件的集合,而是一张图(Graph)。

函数调用函数,类继承类,模块导入模块,测试覆盖功能。这张图天然存在,只是以前没有被结构化地提取出来。

当这张图构建完成后,"变更的影响半径"就可以精确计算——

如果我改了 login() 函数,会影响哪些文件?哪些测试需要重新跑?哪些模块可能需要同步更新?

答案是:图知道。

2.3 Local-First 的安全边界

很多 AI 代码分析工具需要把代码上传到云端处理,这带来了数据安全问题。

code-review-graph 的设计哲学强调:数据不出本地

  • • 图谱存储在本地 SQLite 数据库(.code-review-graph/ 目录)
  • • 语义搜索可选用本地 sentence-transformers 模型
  • • GitHub Action 也是本地执行,不上传任何代码

三、核心技术架构

3.1 整体工作流程

代码库 → Tree-sitter 解析 → AST → 节点/边 → SQLite 图 → MCP/CLI → AI 工具

四个步骤:

  1. 1. 解析(Parse):用 Tree-sitter 将代码解析为 AST
  2. 2. 建图(Graph):将 AST 转化为节点(函数、类、导入)和边(调用、继承、测试覆盖)
  3. 3. 查询(Query):审查时,通过图计算最小需要读取的文件集
  4. 4. 输出(Output):通过 MCP 协议把精准的上下文传给 AI 工具

3.2 节点与边的定义

节点类型:

  • • 文件(File)
  • • 类(Class)
  • • 函数/方法(Function/Method)
  • • 类型(Type)
  • • 测试(Test)

边类型:

  • CALLS — 调用关系
  • IMPORTS_FROM — 导入关系
  • INHERITS — 继承关系
  • IMPLEMENTS — 实现关系
  • CONTAINS — 包含关系
  • TESTED_BY — 测试覆盖关系
  • DEPENDS_ON — 依赖关系

3.3 Blast Radius(影响半径)分析

当一个文件发生变化,影响半径分析会追踪:

  1. 1. 直接调用者:哪些文件/函数调用了被修改的函数
  2. 2. 间接依赖:调用者的调用者(两跳以内的传递依赖)
  3. 3. 测试覆盖:哪些测试覆盖了这个功能

最终,AI 只需要读取这个"影响半径"内的文件,而不是整个代码库。

3.4 增量更新机制

这是工程实现中最见功力的部分。

当文件发生变化时,code-review-graph 的处理流程:

  1. 1. Diff 检测:通过 git diff 找出变更文件
  2. 2. 哈希校验:对未变更文件做 SHA-256 校验,快速确认无变化
  3. 3. 选择性重解析:仅对变更文件重新解析 AST
  4. 4. 图更新:增量更新节点和边

一个 2,900 文件的项目,增量更新只需要 < 2 秒

3.5 存储架构

核心数据存储在本地 SQLite 文件中:

.code-review-graph/
├── graph.db              # 主图数据库
├── graph.html            # D3.js 可视化(可选)
└── cache/               # 向量嵌入缓存

不需要任何外部数据库或云服务。


四、功能全景

4.1 影响分析系列

       
                                           
功能说明
影响半径分析追踪变更的两跳传播范围
执行流检测从入口点追踪调用链,按关键度排序
风险评分审查detect_changes 映射差异到函数/执行流/测试缺口
社区检测Leiden 算法聚类相关代码
       
     

4.2 搜索与分析系列

       
                                           
功能说明
语义搜索可选向量嵌入(本地 sentence-transformers / Gemini / MiniMax / OpenAI 兼容端点)
全文搜索FTS5 混合搜索(关键词 + 向量相似度)
Hub 检测找出高度连接的节点
Bridge 检测发现架构瓶颈点
异常评分检测意外耦合(跨社区、跨语言)
知识缺口分析识别孤立节点、未测试热点、薄弱社区
       
     

4.3 导出与可视化

       
                                           
功能说明
D3.js 力导向图交互式可视化,搜索、筛选、节点缩放
GraphML 导出兼容 Gephi / yEd
Neo4j Cypher 导出兼容 Neo4j
Obsidian 导出生成带 wikilinks 的知识库
SVG 静态图导出轻量分享
Wiki 生成从社区结构自动生成 Markdown Wiki
       
     

4.4 特殊功能

       
                                           
功能说明
自定义语言支持只需配置 languages.toml,无需 fork
图差异对比比较不同时间的图快照
记忆循环将问答结果持久化为 Markdown
多仓库注册跨仓库搜索
       
     

五、支持的平台与语言

5.1 AI 编码平台(13+ 个)

       
                                           
平台配置路径
Codex~/.codex/config.toml
Claude Code.mcp.json + .claude/settings.json
Cursor.cursor/mcp.json
Windsurf~/.codeium/windsurf/mcp_config.json
Zed.zed/settings.json
Continue.continue/config.json
OpenCode.opencode.json
Antigravity~/.gemini/antigravity/mcp_config.json
Gemini CLI.gemini/settings.json
Qwen Code~/.qwen/settings.json
Kiro.kiro/settings/mcp.json
Qoder.qoder/mcp.json
GitHub Copilot.vscode/mcp.json
GitHub Copilot CLI~/.copilot/mcp-config.json
       
     

5.2 编程语言(30+ 种)

Web 类:JavaScript、TypeScript/TSX、Vue SFC、Svelte SFC、Astro

后端类:Python、Go、Rust、Java、C/C++、C#、Ruby、Kotlin、PHP、Scala、Elixir

移动端:Swift、Dart、Kotlin

系统类:Zig、PowerShell、Verilog/SystemVerilog

脚本类:Shell、R、Perl、Lua/Luau、Objective-C

其他:Solidity、Julia、ReScript、GDScript、Nix、SQL

特殊格式:Jupyter Notebook(.ipynb)、Databricks Notebook、Perl XS(.xs


六、详细安装教程

6.1 环境要求

  • • Python 3.10+
  • • Git(用于增量更新的差异检测)
  • • 可选:uv(用于更优的 Python 环境管理)

6.2 安装步骤

第一步:安装 code-review-graph

pip install code-review-graph
# 或

pipx install code-review-graph

第二步:自动配置所有支持的平台

code-review-graph install

这会自动检测你安装了哪些 AI 编码工具,并生成对应的 MCP 配置文件。

第三步:构建代码图谱

code-review-graph build

首次构建约需 10 秒(500 文件项目)。

第四步:重启编辑器/工具

安装后需要重启 AI 编码工具才能加载新的 MCP 配置。

6.3 指定平台安装

如果只想配置特定平台:

# 仅配置 Claude Code
code-review-graph install --platform claude-code

# 仅配置 Cursor

code-review-graph install --platform cursor

# 仅配置 GitHub Copilot

code-review-graph install --platform copilot

# 仅配置 Gemini CLI

code-review-graph install --platform gemini-cli

6.4 启用 Watch 模式(可选)

让图谱在文件变更时自动更新:

code-review-graph watch

6.5 可视化查看

生成交互式 D3.js 图谱:

code-review-graph visualize
open .code-review-graph/graph.html

七、GitHub Action 部署教程

这是我认为最有价值的功能之一:把 AI 代码审查集成到 CI 流程中

7.1 工作原理

  1. 1. CI runner 安装 code-review-graph(从 PyPI)
  2. 2. 恢复缓存的 SQLite 图(或从零构建)
  3. 3. 对 PR 变更文件做增量重解析
  4. 4. 生成风险评分报告
  5. 5. 在 PR 上发布/更新一条"粘性"评论(sticky comment)

关键点:所有分析都在 runner 本地执行,代码不会上传到任何外部服务。

7.2 快速部署

在仓库中创建 .github/workflows/code-review-graph.yml

name: code-review-graph

on:

  pull_request:


permissions:

  contents:
 read
  pull-requests:
 write

jobs:

  review:

    runs-on:
 ubuntu-latest
    steps:

      -
 uses: actions/checkout@v4
      -
 uses: tirth8205/code-review-graph@v2.3.6
        with:

          github-token:
 ${{ secrets.GITHUB_TOKEN }}

7.3 开启风险门控(merge gate)

设置当风险评分达到一定程度时,阻止合并:

- uses: tirth8205/code-review-graph@v2.3.6
  with:

    github-token:
 ${{ secrets.GITHUB_TOKEN }}
    fail-on-risk:
 high  # risk ≥ 0.70 时失败

风险等级定义:

       
                                           
等级分数
low< 0.40
medium0.40 – 0.69
high0.70 – 0.84
critical≥ 0.85
       
     

7.4 PR 评论内容

这条"粘性"评论包含:

  • 整体风险评分 — 变更函数数、影响执行流数、测试缺口数
  • 风险排序的变更 — 按风险排序的变更函数表,含文件/行号和测试覆盖状态
  • 受影响的执行流 — 按关键度排序的入口点执行流
  • 测试缺口 — 无直接测试覆盖的变更函数
  • Token 节省 — 图谱审查比全文读取节省的 token 数

八、基准测试数据

8.1 Token 效率

       
                                           
仓库原始 Token图查询 Token节省倍数
fastapi951,0712,169528.4x
code-review-graph208,8212,49593.0x
gin166,8681,99091.8x
flask125,0221,98671.4x
express135,9553,46540.6x
httpx89,4922,43838.0x
       
     

中位节省倍数:~82 倍

8.2 影响分析准确率

       
                                           
仓库提交数平均 F1精确率召回率
httpx20.8640.7861.000
fastapi20.8340.7501.000
code-review-graph20.7340.5841.000
express20.6670.5001.000
flask20.6280.4811.000
gin30.6090.4391.000
       
     

平均 F1:0.714

8.3 构建性能

       
                                           
仓库文件数节点数边数流检测搜索延迟
express1411,91017,553106ms0.7ms
fastapi1,1226,28527,117128ms1.5ms
flask831,4467,97495ms0.7ms
gin991,28616,762111ms0.5ms
httpx601,2537,89696ms0.4ms
       
     

九、观点与总结

9.1 核心创新

1. 图谱先于搜索

大多数 AI 代码工具依赖关键词搜索或 RAG。code-review-graph 的思路是:先把代码结构提取成图谱,查询时从图谱出发找到最小上下文。这是从"搜什么"到"理解结构"的方法论升级。

2. 增量优先

对于大仓库,全量重解析成本极高。code-review-graph 通过 SHA-256 哈希校验和差异分析,实现了< 2 秒的增量更新,这意味着它可以在实际工作流中持续运行,而不是一次性工具。

3. MCP 协议原生集成

Model Context Protocol 是 AI 编码工具的标准接口。code-review-graph 的 MCP 工具(30+ 个)覆盖了从图构建到审查、到架构分析的全流程,让 AI 工具天然能"理解"代码结构。

9.2 适用场景

强烈推荐:

  • • 大型代码仓库(1,000+ 文件)的 AI 代码审查
  • • Monorepo 环境(多语言、多包、多服务)
  • • 有 CI/CD 集成需求的团队(GitHub Action)
  • • 需要控制 AI Token 消耗的个人开发者或团队
  • • 对代码安全有要求的项目(数据不出本地)

不太适合:

  • • 小型单文件项目(overkill)
  • • 非结构化代码(如大量动态生成代码)
  • • 对解析准确性要求极高的场景(Tree-sitter 的解析覆盖率不是 100%)

9.3 与类似项目对比

       
                                           
维度code-review-graphGreptileGraphRAGLSP
核心方法Tree-sitter 建图API 云服务图数据库语言服务协议
Token 节省~82x需付费取决于实现
部署方式本地 pip云 API需部署图数据库需 LSP server
数据安全完全本地需上传代码取决于部署本地
CI 集成GitHub Action需付费需自行实现
多语言支持30+有限取决于实现取决于 LSP server
       
     

9.4 未来展望

根据 Roadmap,项目规划的方向包括:

  • GitHub App 模式:组织级别的安装,不只是仓库级别
  • 团队同步:通过 git 跟踪图数据库的团队共享
  • 超大型 Monorepo 优化:50k+ 文件的性能优化

十、关键命令速查

       
                                           
命令用途
code-review-graph install自动检测并配置所有平台
code-review-graph build解析整个代码库
code-review-graph update增量更新(仅变更文件)
code-review-graph watch监听文件变更自动更新
code-review-graph visualize生成交互式 HTML 图
code-review-graph detect-changes风险评分的变更分析
code-review-graph wiki生成 Markdown Wiki
code-review-graph register <path>注册多仓库
code-review-graph eval运行评估基准测试
code-review-graph status图统计信息
       
     

结语

code-review-graph 解决了一个非常具体但极其普遍的问题:AI 编码工具在代码审查时浪费了大量 Token 在读无关代码上。

它的解法优雅而有效:先把代码解析成结构化的图谱,再通过图的遍历找到最小影响集,让 AI 只读它真正需要的内容。

对于大型仓库和 Monorepo 项目,这个方案的价值尤为明显——当一个变更可能影响几十个文件时,精确知道"哪些文件需要关注",不仅节省 Token,更能提升审查质量。

GitHub:https://github.com/tirth8205/code-review-graph

官网:https://code-review-graph.com

官网文档:https://code-review-graph.com/docs


本文由 AI 辅助生成,参考来源:code-review-graph 官方 GitHub 仓库及文档。首发于微信公众号「艾瑞Eric」。

                 
基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-04 22:14:03 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/833457.html
  2. 运行时间 : 0.250195s [ 吞吐率:4.00req/s ] 内存消耗:4,927.68kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=744e1d324ceb5689ca6ef58ba2b9e5d3
  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.000943s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000853s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000350s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000251s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000480s ]
  6. SELECT * FROM `set` [ RunTime:0.000196s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001159s ]
  8. SELECT * FROM `article` WHERE `id` = 833457 LIMIT 1 [ RunTime:0.001191s ]
  9. UPDATE `article` SET `lasttime` = 1783174443 WHERE `id` = 833457 [ RunTime:0.054093s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000718s ]
  11. SELECT * FROM `article` WHERE `id` < 833457 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001686s ]
  12. SELECT * FROM `article` WHERE `id` > 833457 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001426s ]
  13. SELECT * FROM `article` WHERE `id` < 833457 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.003404s ]
  14. SELECT * FROM `article` WHERE `id` < 833457 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.003968s ]
  15. SELECT * FROM `article` WHERE `id` < 833457 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.003355s ]
0.255031s