乐于分享
好东西不私藏

AI工作流实战全景图:从搭建编译工具链到分析原理图与PCB,我把塞进了嵌入式软硬件全链路

AI工作流实战全景图:从搭建编译工具链到分析原理图与PCB,我把塞进了嵌入式软硬件全链路
工作流复盘 · 年度精选2026.07

AI只能写写代码、画画图

AI工作流实战全景图

从搭建编译工具链到分析PCB

编译器 · 代码生成 · 知识库 · EDA桥接 · 原理图评审 · PCB分析

AI的探索之旅

工作流年度总结

📦 10 Parts

👉 滑动

PART 01

引言:AI能帮硬件工程师干什么?

为什么最折腾

PART 02

一、AI辅助搭建:嵌入式交叉编译工具链

PART 03

二、AI辅助代码生成:从骨架代码到驱动移植

PART 04

三、AI搭建个人知识库:把暗知识变成可检索的资产

PART 05

四、AI辅助搭建EDA开发环境:把AI的脑子接通PCB编辑器

PART 06

五、AI分析原理图:从"同事扫一眼"到"逐项核查"

PART 07

六、AI分析PCB:从布局合理性到竞品反推

PART 08

七、全景工作流:六个环节如何串联

PART 09

八、踩坑实录:十个让我多干了一天活的大坑

PART ///

九、这一年的核心体悟

体悟

AI工作流全景

📋 **本文概览:** 用了几个月的时间,摸索把AI从"聊天助手"升级为嵌入式+硬件开发的"全链路副驾驶"。这篇文章把真实工作流拆开讲清楚:AI辅助搭建编译环境、AI辅助代码生成、AI搭建个人知识库、AI接管EDA开发环境、AI分析原理图和PCB——每个环节都有踩过的坑。约七千字,附五张图。

01

PART

引言:AI能帮硬件工程师干什么?

PART 01

一年前如果有人跟我说"AI能帮你画PCB",我会觉得是科幻。

一年后,我的日常是这样的:在手机飞书聊天软件里发一句"帮我把交叉编译工具链打开",智能体自动去解压SDK、设置环境变量、验证编译通过。发一句"分析一下这块板子的电源树有没有问题",它就去读取原理图数据、跑AI语义检查、返回一份带标注的评审报告。

这不是某一天的灵光一现,而是过去几个月,我一个环节一个环节把AI"塞"进真实工作流后积累的经验。这篇文章,我把这几个月走过的路拆成六个环节,每个环节都讲清楚两件事:AI能干什么,以及AI不能干什么。


02

PART

一、AI辅助搭建:嵌入式交叉编译工具链

PART 02

### 这件事有多折腾

做过嵌入式开发的人都懂,搭建交叉编译工具链是第一个下马威。

拿到一块视频处理器开发板,SDK文件夹里躺着几百个压缩包。编译工具链需要从特定路径解压、设置一堆环境变量、配置PATH指向那个藏在六层目录下的交叉编译器。更恶心的是,每个芯片厂商的工具链放法都不一样——有的把编译器丢在/opt/里,有的藏在SDK深处。

最可怕的是"差一个字母白干一天"——aarch64-linux-gnu-gcc 还是 aarch64-v01c01-linux-gnu-gcc?差几个字母,编译器版本天差地别,编译出来的东西烧到板子上直接起不来。

### AI怎么帮忙

我把以下内容喂给了AI

喂给AI的"知识包":

- SDK的目录结构(tree输出)

- 官方文档里的编译依赖列表

- 芯片厂商的技术手册(关键章节)

然后AI做了这几件事:

第一件事:把文档翻译成可执行的步骤。 厂商文档里写着"解压工具链到指定目录后配置环境变量"——这句话在AI手里变成了逐条可复制的命令:

...code

tar -xzf aarch64-v01c01-linux-gnu-gcc.tar.gz -C /opt/toolchain/

export PATH=/opt/toolchain/aarch64-v01c01-linux-gnu-gcc/bin:$PATH

export ARCH=arm64

export CROSS_COMPILE=aarch64-v01c01-linux-gnu-

第二件事:把分散在三个文档里的依赖包合并成一个列表。 SDK的PDF里零散提到了zlib、ncurses、mtd-utils,AI把它们合并成一个apt install命令,还区分了哪几个是编译依赖、哪几个是运行时依赖。

第三件事:验证。AI不知道工具链应该正确输出什么版本号,但它可以根据我给的文档来判断——"文档说工具链版本是v01c01,你跑一下aarch64-v01c01-linux-gnu-gcc --version看看输出里有没有这个字符串"。

### 坑在哪

第一个坑:AI不会读PDF里的中文。 如果你的技术手册是扫描版PDF,AI基本抓瞎。解决办法是先用OCR工具把PDF转成可搜索文本,再喂给AI

第二个坑:环境变量顺序。AI给的export命令可能没问题,但如果用户机器上已经装过另一个交叉编译器,PATH的顺序就至关重要。这个AI不知道,得人工确认。

参考我之前写的文章:"我的嵌入式 AI 开发工具链 2026——用 AI Agent 辅助搭建海思 Hi3519DV500 完整编译环境"


03

PART

二、AI辅助代码生成:从骨架代码到驱动移植

PART 03

### 不是替你写,是替你查

很多工程师对"AI写代码"的理解是:丢给它一个需求文档,它返回一个可运行的工程。这个场景目前只对Web前端和简单脚本成立,到了嵌入式领域基本不成立。

为什么?因为嵌入式代码的"上下文"是所有代码里最复杂的——它依赖芯片的寄存器映射、外设的时钟树配置、pinmux的复用关系、甚至板子上的实际连线。这些信息都在数据手册里,而数据手册动辄两三千页。

AI真正擅长的是另一个方向:你已经画好了原理图、选好了外设型号,但不确定寄存器该怎么配置。 这时候你把手册相关章节和参考代码喂给AI,它能帮你写出正确的初始化序列。

举一个真实的例子:开发板上有个传感器的MIPI接口需要配置,厂商SDK里有一份参考驱动,但那份驱动是针对另一个分辨率的。我把参考驱动、目标传感器的数据手册给了AI,让它重写MIPI初始化序列——时钟频率、lane数、数据格式、VSYNC/HSYNC极性的那十几行寄存器配置,AI全部给出了正确的值。

### AI能做什么,不能做什么

AI能做的:

- 寄存器级配置代码生成(前提是喂了手册)

- 驱动框架代码(如一个I2C设备的probe函数骨架)

- 编译脚本、Makefile改写

- 从参考代码移植到新平台时做适配

AI不能做的:

- 在没有原理图的情况下推算出pinmux配置

- 时钟树选频率(这需要系统级理解功耗/EMI/性能权衡)

- 调试硬件层面的bug(没示波器看波形就别想了)

参考我之前写的文章:AI Agent如何拆解「Hi3519DV500 SDK能不能用musl编译」的完整复盘


04

PART

三、AI搭建个人知识库:把暗知识变成可检索的资产

PART 04

### 什么是暗知识

我说的"暗知识",是指那些散落在PDF手册、调试记录、论坛帖子里、完全不成体系的工程知识。比如:

- "这颗芯片的VCAP引脚为什么必须用2.2µF而不是1µF?"

- "CAN总线的终端电阻焊在哪个位置?"

- "上次板子起不来是因为忘记重设传感器时钟,寄存器地址是0x11018440"

这些知识平时用不上,但关键时刻差一个就多干一天活。

### 我的知识库方案

我用AI搭了一套个人知识库体系,核心思路很简单:把一切会反复查阅的东西结构化。

知识库
内容
页数
来源
芯片Wiki
电源树、引脚规划、阻抗规范、去耦规则
40+
数据手册+参考设计
系统Wiki
编译流程、驱动框架、启动流程、调试方法
30+
SDK文档+调试记录
开发板知识库
传感器接口、视频推流命令、时钟配置
20+
实际操作日志

关键设计:不是RAG,是Wiki。

我不做RAG(检索增强生成),原因很简单——RAG擅长回答"文档里写了什么",但不擅长回答"文档里没写但你该知道的事"。

Wiki的优势:它是一个网状的知识图谱,每篇wiki页面之间互相关联。比如"VCAP引脚"这个页面链接到"去耦电容选型"页面,又链接到"电源完整性设计指南"页面。AI阅读这个wiki时,会顺着链接把所有相关知识串起来回答你的问题,这比RAG的向量检索靠谱得多。

### 喂AI的高效姿势

第一优先级:喂指令,别喂路径。 不要说"帮我把/home/project/docs/manual.pdf读一下",而是说"芯片的工作电压是1.1V核心+3.3V IO,每个VCAP引脚接2.2µF电容"。把知识提炼成事实,AI才记得住。

第二优先级:喂场景,别喂步骤。 每次完成一个复杂任务后,让AI把这个任务的处理流程写成技能文件。下次遇到类似的活,AI自动加载这个技能,全自动执行——不再需要你重复指导。

可参考文章:WIKI


05

PART

四、AI辅助搭建EDA开发环境:把AI的脑子接通PCB编辑器

PART 05

### 这步是分水岭

前面三个环节——编译工具链、代码生成、知识库——AI都是在帮你查东西、写东西。但到了EDA环境这一步,AI开始直接操控你的设计工具。

我用的是立创EDA专业版,主线是这三件套:

第一件:AI技能文件。 它告诉AI"你能调用哪些API函数"——包括搜索元件库、放置元件、读取网络表、跑DRC检查、导出BOM。没有这个技能文件,AI就是睁眼瞎。

第二件:桥接服务器。 一段运行在本机的Node.js程序,端口监听49620。它的作用很简单:接收AI发来的指令,翻译成立创EDA的API调用,在编辑器里执行。

第三件:EDA编辑器内的官方网关扩展。 它在工程师的编辑器里提供WebSocket服务,让外部程序(在这里就是AI)能通过标准协议操控编辑器里的所有功能——从放置元件到运行DRC

三层架起来之后的效果是这样的:

传统方式: 你想知道一块STM32高端系列芯片的PCB上,所有VDD引脚旁边是不是都有100nF去耦电容。你需要手动打开PCB文件,一个一个数。几十个VDD引脚,数完了还不确定自己的判断对不对。

AI介入之后: 你说一句"检查PCB的去耦电容布局"。AI通过桥接服务器读取了PCB上所有元件的坐标和网络连接,对比知识库里"VDD→100nF→间距<500mil"的规则,返回一份带坐标的列表:"VDD_3(坐标6500,-3200)附近无去耦电容,最近一颗在1200mil外"。

### 坑——"静默失败"

最让人崩溃的情况:API调用返回了"成功",但编辑器里什么都没变。

排查了两天才找到原因——这些API的很多函数是异步的,必须await一个.done()方法才能真正落盘。少写一个await,指令就静默消失了。

知道这个机制再去读官方的TypeScript类型定义,就能避开这个天坑。

可阅读之前的文章:AI辅助原理图评审:电源去耦、BOOT引脚、VCAP——19项逐一核查,遗漏?不存在的

VS Code 插件Claude Code 直接操刀画原理图和 PCB:接外部 API 全流程


06

PART

五、AI分析原理图:从"同事扫一眼"到"逐项核查"

PART 06

### 手工评审的三大缺陷

做过硬件项目都有这个经历:原理图画完,同事帮忙扫一眼,提几个建议——"这个去耦电容最好放近一点""这个引脚是不是少接了"。然后呢?然后就往下画PCB了。等板子回来才发现一堆问题。

手工评审的核心缺陷:人是会累的。 检查到第30个引脚的时候,注意力已经散了。而且每个人有自己熟悉的领域——做电源出身的人可能一针见血地发现LDO的电容耐压不够,但看不太出来DDR的等长有没有问题。

### AI评审怎么做

我把一张ST高端系列芯片的原理图交给AI做评审,用的是19条规则的检查清单:

电源部分(5项): 每个VDD是否都有去耦电容、VCAP电容值是否正确、VBAT是否处理、VDDA独立滤波、LDO输入输出电容。

时钟部分(3项): 晶振负载电容是否匹配、32KHz是否接对、时钟输出是否加串联电阻。

复位与启动(4项): NRST上拉+电容、BOOT启动配置、SWD调试接口、预留测试点。

外设(7项): USB差分对阻抗、CAN终端电阻、ETH PHY地址配置、SD卡上拉、QSPI Flash引脚、UART电平、GPIO电流驱动能力。

原理图数据和这19条规则一起发给AI,结果:

发现5个问题,其中2个是"同事扫一眼"绝对看不出来的:

- VCAP引脚接了1µF而不是2.2µF——这不是硬错误,板子可能还能跑,但在某些低功耗场景下稳压会抖。

- BOOT0引脚悬空——经典的"大部分时候没事,但偶尔上电进不了系统"的坑。

AI不会漏、不会累、不会跳过"看起来不重要"的检查项。这就是AI评审的核心价值。

AI辅助原理图评审:电源去耦、BOOT引脚、VCAP——19项逐一核查,遗漏?不存在的

AI能不能帮你做PCB布局?从一团乱麻到合理分区,100+器件不再手忙脚乱


07

PART

六、AI分析PCB:从布局合理性到竞品反推

PART 07

### 布局分析

PCB布局是最需要经验、最AI难以替代的环节。为什么?

同一张原理图,三个工程师能布出三种完全不同的布局,但可能都对。布局是多目标优化——你要同时平衡散热、信号完整性、可制造性、可维修性,这些目标经常互相冲突。

AI在某些维度上能提供有价值的分析:

第一步:读取当前布局数据。AI通过桥接服务器获取PCB上所有元件的坐标、封装类型、网络连接。

第二步:基于规则做分析。AI对照知识库里的规则逐项检查——晶振是否靠近MCU、去耦电容是否在500mil范围内、电源区是否远离数字信号、差分对走线长度差是否在容差内。

实际案例: 我让AI分析了一块六层板的布局,AI指出了一块区域的问题:一个CAN收发器被放在了板子最左边,而它对应的连接器在右上角,差分管要横跨整个板——虽然CAN是低速信号,布线可以绕过去,但影响美观,而且和电源区交叠。

### 竞品反推

这是AI最有意思的应用之一。拿到一块竞品PCB的Gerber文件,想理解它的设计思路——但这需要从铜皮、丝印、钻孔里反推出电路结构,非常耗时。

AI能帮的:从Gerber导出BOM、识别芯片型号(通过丝印文字匹配库)、画出电源拓扑树。

AI做不到的:完全自动反推原理图。这不是技术问题,是物理问题——多层板内部的走线、过孔、电源平面分割,Gerber文件里根本看不到。反推仍然需要人工参与——用万用表量通路、补全无法从Gerber推断的连接。

用AI做竞品分析:从Gerber反推设计思路


08

PART

七、全景工作流:六个环节如何串联

PART 08

把前面的六个环节拼在一起,就是我现在每天在用的一整套AI工作流

工作流六步全景

这个链条的精髓不是"AI替代人",而是"AI覆盖了人的盲区":

环节
传统方式
AI加持后
关键能力
环境搭建
翻PDF手动配
AI生成命令+验证
文档→可执行步骤
代码生成
查手册手写
AI写寄存器配置
理解技术手册
知识库
记在脑子里
AI搭Wiki网状索引
结构化+可检索
EDA环境
手动画图
AI桥接操控编辑器
工具链打通
原理图评审
同事扫一眼
AI逐19项检查
不疲劳不遗漏
PCB分析
人工走查
AI读取+规则比对
定位问题坐标

09

PART

八、踩坑实录:十个让我多干了一天活的大坑

PART 09

AI用进真实工程里,踩坑是少不了的。以下是我印象最深的几个:

坑一:静默失败。 API返回"成功"但编辑器里没变化——函数异步执行但主程序没等它结束。解法:每写一个API调用都把官方类型定义翻出来看一遍。

坑二:坐标系统混乱。原理图坐标系和PCB坐标系完全不一样(一个用0.01inch、一个用mil),坐标转换函数还经常是文档里没写的内部方法。

坑三:串行陷阱。 批量创建元件时不能用并行——因为每个创建操作内部依赖上一个的ID递增。这是我用并行处理失败后才发现的。

坑四:PDF中文烂。 扫描版PDF里的中文表格OCR出来全是乱的,AI读不懂。现在拿到新文档第一件事就是确认是文字版还是扫描版。

坑五:AI会"脑补"。 给AI一个不完整的知识库,它就会基于自己大模型的预训练数据"合理推测"。多数时候推测是对的,但一旦错了就是完全自洽的谎言——问题写在板上你才能发现。

坑六:TOKEN开销。 每次让AI操作PCB编辑器,都需要把当前编辑器的完整状态(几百个元件的坐标、网络信息)发给AI分析。这个上下文量极大,用Flash模型有时候会丢失细节,必须用Pro。

坑七:知识库要维护。 芯片手册更新了、驱动升级了、新的设计经验产生了——如果知识库不跟着更新,AI就会基于过时的信息给出错误建议。维护知识库的工作量不容忽视。

坑八:AI分不清"看起来对"和"实际对"。 它根据知识库说每个VDD旁边应该有一个100nF去耦电容,但如果你的板子上确实是八个VDD共享一个100nF——AI指出的这个"问题"其实是"AI自己学的规则和你实际设计的差异"。

坑九:工具链版本问题。AI不会告诉你这个版本的编译器有个已知bug(在某些优化等级下生成错误的跳转地址),因为它不知道。这种知识只能靠社区和调试经验积累。

坑十:有时AI帮你查出来的问题,你觉得"不可能"。 我的原则:即使它只有30%的可能性是对的,也值得手动验证一下。浪费5分钟验证一个误报,总好过错过一个真实问题多打一次板。


///

LAST

九、核心体悟

PART ///

体悟一:AI最值钱的地方不是"替你写代码",而是"替你看漏的东西"。

原理图评审、DRC检查、去耦电容检查——这些活人都会做,但人会累、会跳、会粗心。AI不会。它可能不够聪明,但它永不疲劳。

体悟二:AI去除幻觉的能力=你喂给它的知识质量。

AI想象成一个超级实习生——它有过目不忘的记忆力和不知疲倦的执行力,但它真的什么都不知道,全靠你教。你喂它多少手册、多少调试记录、多少设计规则,它就有多少判断力。

体悟三:人机分工的黄金法则——AI负责"推",人负责"断"。

AI帮你把所有可能性列出来、把所有隐患标出来,但最终选哪个方案、相信哪个判断——由你来做决定。AI是副驾驶,方向盘永远在人手里。

体悟四:工具链打通比模型升级更有价值。

我花在"让AI能操控EDA编辑器"上的时间,远多于"换个更好的模型"的时间。因为不管你用什么级别的模型,只要AI的手够不到你的工具,它就是个嘴炮。手伸进去了,能力立刻指数级增长。


这一年的探索让我确信一件事:AI不是来替代硬件工程师的,它是来让硬件工程师摆脱"体力活"、腾出脑子做真正需要判断力的事情的。原理图评审能自动化、PCB检查能自动化、编译环境搭建能自动化——省下来的精力,拿来琢磨更难的架构问题和系统级设计。

*关注「AI的探索之旅」,每篇都来自真实的工程实践。*

*实践出真知。*

👇 长按识别关注,不错过每一篇干货

AI的探索之旅

从工程逻辑看AI落地

📌 版权所有 © AI的探索之旅 | 转载请联系作者

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-24 16:27:32 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/873895.html
  2. 运行时间 : 0.106585s [ 吞吐率:9.38req/s ] 内存消耗:4,804.11kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=61a3517dee80da3f2ed9a9748fa049d3
  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.000493s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000644s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000255s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000292s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000476s ]
  6. SELECT * FROM `set` [ RunTime:0.000207s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000509s ]
  8. SELECT * FROM `article` WHERE `id` = 873895 LIMIT 1 [ RunTime:0.000425s ]
  9. UPDATE `article` SET `lasttime` = 1784881652 WHERE `id` = 873895 [ RunTime:0.014933s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000361s ]
  11. SELECT * FROM `article` WHERE `id` < 873895 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000536s ]
  12. SELECT * FROM `article` WHERE `id` > 873895 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000400s ]
  13. SELECT * FROM `article` WHERE `id` < 873895 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000723s ]
  14. SELECT * FROM `article` WHERE `id` < 873895 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001022s ]
  15. SELECT * FROM `article` WHERE `id` < 873895 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000733s ]
0.108301s