乐于分享
好东西不私藏

AI 为什么还没取代软件工程师

AI 为什么还没取代软件工程师

导读

说真的,AI 写代码越强,软件工程师反而越容易被一句话吓住,既然代码都能生成了,还要人干嘛?这篇文章最有价值的地方,是把问题从情绪拉回工程现场。它不否认 coding agent 正在压缩执行层,但提醒我们,软件开发真正难的部分往往是决定做什么、确认交付是否可信,以及为结果负责。这块适合所有正在用 Cursor、Claude Code、Codex 或内部 agent 工作流的开发者读,尤其是想判断自己该补哪类能力的人。

正文

关于 AI 替代工作,焦虑和不确定性都很强。我们怎样才能越过那些模糊警告和夸张预测,用数据来讨论这个问题?一个好办法,是观察 AI 能力推进最远、采用速度也异常快的职业:软件工程。

本文中,我们认为已经有足够证据可以反驳这样一种叙事:一旦 AI 能力达到某个阈值,就会造成大规模裁员。既然这在一个监管壁垒很少的行业里都成立,那么大多数其他职业很可能会受到更多缓冲。

我们也大致理解为什么会这样。很多知识工作,包括软件开发,都可以看成一个决策-执行-交付三明治”(decide-execute-deliver sandwich)。AI 压缩的是“执行”层,也就是三明治中间那层;但另外两层会抵抗自动化,而且这种抵抗不会单靠能力提升就消失。

我们的结论,是对软件工程需求未来走势保持谨慎乐观。本文是一个系列的第一篇,下一篇会讨论为什么即便整体需求健康,单个软件工程师的职业道路仍然可能变得颠簸。这个系列基于经济学和软件工程领域的已发表文献、我们自己对 AI agent 的评估和观察,以及许多软件工程师对 AI 影响其职业当下与未来的反思。这些反思既来自公开文章,也来自我们与社区的互动。

软件行业里那些 AI 驱动大裁员的故事,看起来像经典的 “AI washing”

先看三个上过头条的故事,以及它们和现实之间的落差:

  • 2 月,金融科技公司 Block,也就是 Cash App、Square、Afterpay 等应用的开发商,因为创始人 Jack Dorsey 所说 AI 正在“带来一种新的工作方式”,让团队变得“更小、更扁平”,宣布裁员 4000 人。他还特别提到 2025 年末模型能力的改进。但后续报道揭示的是完全不同的画面:公司在疫情期间员工数增长超过三倍,此后承受巨大财务压力。Cash App 团队的一位数据科学家 Naoko Takeda 发帖说,Block “把 AI 硬塞进每个人喉咙里”,但她看到的“生产力提升非常有限”。她拒绝了 75% 的留任加薪并选择离职。其他受访员工对 AI 在 Block 能做什么也有很不一样的理解,他们认为,当时 AI 还达不到替代被裁员工的水平。Dorsey 的一位朋友兼科技行业 CEO Aaron Levie 评论说,Block “可能比其他任何公司都更容易利用 AI 来替代人工”,因为它“有非常强的工程师文化”。我们更愿意把这看成 AI 驱动裁员叙事里一个暴露漏洞的点,而不是支撑它的证据。

  • 4 月,Snap 裁掉约 1000 人,CEO Evan Spiegel 在裁员备忘录中主要把原因归给 AI。他还说,AI 生成了65% 的新代码。现实里,这次裁员发生在一位激进投资者要求削减成本的行动之后。(Snap 自 2017 年 IPO 以来每个完整财年都在净亏损,2026 年股价也下跌超过 30%。)很能说明问题的是,裁员的性质,比如增强现实部门多个岗位共 150 个职位被裁,并不符合如果裁员真由 AI 驱动我们会预期看到的模式,也就是不会集中在某个部门,而会横跨编程和其他“AI 暴露度”高的岗位。

  • 5 月,Intuit 宣布裁员 3000 人,同时和 Anthropic、OpenAI 达成合作。媒体把两件事连在一起,将裁员包装成 AI 驱动的重组。这一次,CEO 反而反驳了这个省事的叙事,说这些裁员“和 AI 没有任何关系”,裁掉的是“协调负担重的岗位”和过多的管理层级。

我们不是专挑这些例子。在我们检查过的每一个 AI 驱动软件工程裁员故事里,同样的叙事违例都会出现。事实证明,拿 AI 来包装裁员是一种全经济范围的现象,许多调查都能证明这一点:

  • 59% 的美国招聘经理承认,在解释招聘冻结或裁员时,他们会强调 AI,因为相比承认财务约束,这套说法更容易被利益相关方接受。

  • Forrester 首席分析师 J. P. Gownder 在谈到那些准备进行所谓 AI 驱动裁员的公司时说:“当我们问他们是否已经有成熟、经过验证的 AI 应用可以接手这些工作时,十次里有九次,答案都是否,而且他们甚至还没开始。”

  • 在一项覆盖 1000 多名全球高管的 HBR 调查中,21% 的人表示已经“出于对 AI 的预期”进行了大规模裁员,另有 39% 表示已经进行过低到中等程度的预期性裁员。相比之下,只有 2% 的人已经因为实际 AI 落地进行了大规模裁员。这个 10 倍差距说明,高管和其他人一样,很容易被 AI 替代工作的误导性叙事带着跑。

另一个有意思的数据点来自 WARN Act(《工人调整和再培训通知法案》),它要求某些工厂关闭和影响超过 100 名员工的大规模裁员必须披露。2025 年 3 月,纽约成为美国第一个在 WARN Act 申报中加入 AI 披露勾选框的州。在完整的第一年里,超过 160 家公司提交了 WARN 通知。没有一家勾选 AI 框。我们联系了纽约州劳工部,对方确认截至 5 月下旬,只有一家公司 Nespresso 勾选了这个框。如果这些申报准确,那么在相关期间纽约州约 25000 名被裁员工中,只有 46 人,也就是大约 0.2%,受到了 AI 影响。

对 AI 驱动大裁员叙事来说,更致命的是:裁员本来就是衡量 AI 潜在生产率收益的错误信号!研究很清楚地表明,这种影响是通过“招聘放缓,而不是离职增加”发生的。解雇现有员工,恰恰会损失那些能让员工有效使用 AI 的默会知识和组织资本。更不用说,裁员还会带来遣散费、士气受损和重新招聘风险等成本。考虑到这些成本,既然自然流失在几年内也能达到同样效果,大规模裁员通常没有必要。

那么,如果我们不只看裁员,而是看整体就业趋势,数据会告诉我们什么?美联储经济学家的一篇重要论文汇总了美国情境下的证据。软件工程师就业仍在增长,但他们发现,与没有 AI 的反事实情境相比,ChatGPT 之后增长速度变慢了,每年大约慢 3 个百分点。这项研究的一个重要限制是,方法无法捕捉自雇就业,所以也可能有一部分增长放缓被创业吸收了。我们确实有其他研究表明 AI 会让创业更容易。所以真实图景可能比美联储研究显示的还要健康。

最后,也应该承认软件工程领域确实存在两类间接由 AI 驱动的工作损失,但它们不同于 AI 替代软件工程师。第一类是,AI 有时会摧毁某个产品的需求,比如 Chegg(作业帮助)或 Stack Overflow(技术帮助),这两家公司都裁过员。AI 并没有直接做这些员工原来做的工作,而是让那种需求本身消失。历史上的类比很强:1950 年美国人口普查中的 270 种职业里,只有一种工作被自动化直接消灭了,那就是电梯操作员。但还有许多职业是被新技术淘汰的,比如电报员。

另一个可信的 AI 驱动裁员故事,出现在卖 AI 的公司,而不是买 AI 的公司。所以当 IBM 或 SAP 这样的公司宣布因为 AI 裁员时,更准确的说法是:“我们把员工编制从传统职能重新分配到增长最快的产品线上。”这是围绕收入机会展开的普通企业重组,不是技术替代员工。

为什么 coding agent 还没有导致劳动力替代:决策-执行-交付三明治

很多科技领导者,比如上面提到的 Snap CEO,会一边报告由 AI 写出的代码比例,一边谈裁员或预测未来工作岗位损失。这会喂养一种过于简单的心智模型:一旦 AI 能写所有代码,就不再需要程序员了。好在,这个模型是错的。所谓 AI 写代码比例这个指标,几乎完全脱离了劳动力替代真正关心的问题。原因在这里。

写代码不是瓶颈,而且从来都不是。比如,一篇 2019 年论文总结已有研究后得出结论:“开发者花在编码上的时间少得惊人,根据不同研究,比例在 9% 到 61% 之间”。这和论文自己从 6000 名微软开发者那里得到的数据一致。随着 coding agent 开始被采用,2025 年末出现了一大批博客文章,开发者们意识到,让 agent 写大部分代码,对整体生产力影响很小,于是纷纷指出写代码不是瓶颈。

如果写代码不是瓶颈,那什么才是?任务拆分调查会指向会议或调试之类的东西。但这只会带来更多问题:开发者在那些会议里到底做什么,为什么 AI 不能做?随着能力提升,调试难道不会被自动化吗?要理解真正的瓶颈,我们必须进入定性层面,挖一挖软件工程师自己对哪些工作抵抗自动化的理解。

当我们做这项分析时,浮现出三个真正瓶颈:(1)决定并明确要构建什么;(2)验证并为交付物负责;(3)执行前两项都需要的深层人类理解,也就是对代码库、业务和环境的理解。

也就是说,软件工程师的工作由一个“决策-执行-交付”三明治组成,而理解是这三层的前提。AI 已经压缩了三明治中间那层,但两端基本没变。只要软件开发团队仍然负责决策,并且要对交付物负责,工程师就仍然需要花时间建立对系统的深层理解。这就是三个瓶颈。

图:软件开发由三层组成:(1)决策,问题定义、规格说明、规划;(2)执行,设计与实现;(3)交付,测试、验证、集成、维护等。注意,这些是概念层,不是时间阶段。在一个项目过程中来回切换非常常见。

三明治模型解释 AI 生产率影响的证据,来自最近一篇论文《Writing Code vs. Shipping Code》。研究者分析了 GitHub 上 10 万名开发者,发现 AI agent 让代码行数增加了 8 倍,这和 AI 几乎完全压缩三明治中执行层的想法一致。但发布数量只增加了 30%,这强烈暗示人的瓶颈,也就是决策层和交付层,依然存在。

这个三明治还能继续被压缩吗?我们不这么认为。在流水线的一端,开发团队需要决定构建什么。初级软件工程师学到的最重要经验之一,是需求规格说明,这个行业黑话对应的就是这一层,耗时长得惊人;如果强行压缩,后面会痛苦得多。这一层很难自动化,因为它需要思考用户需求、市场信号、组织优先级,有时还要考虑监管约束。

随着 AI 能力提升,可以委托给 AI 的决策类型会随时间增加。但这不会让“决策”层变薄。一旦某个决策可以委托给 AI,它就不再是竞争优势的来源,人类决策的价值会继续向上迁移。软件复杂性会随时间增加,所以这个过程没有天花板。

在三明治的另一端,人类团队需要为交付物负责。也许未来某一天,团队会在没有充分测试和理解的情况下交付任务关键型代码,但今天的 AI 仍然非常不可靠,这样草率的做法会对软件团队及其客户构成生存级威胁。

即便未来技术障碍消失,我们也不必把控制权交给 AI。AI as Normal Technology 的一个核心洞见是,我们可以通过共同规范、法律和政策,集体选择让人类继续承担责任。相比试图减缓技术能力发展,这是一种更有韧性的方式,既能控制 AI 影响扩散的速度,也能提升安全性。这些速度屏障已经很大程度上存在于责任法和行业监管中,但还可以进一步加强。

在这个图景里,随着越来越多执行层工作被委托给 AI,未来软件工程师的角色会变得有点像吊车操作员。AI agent 会完成大部分认知重活;监督 agent 并让它保持可控,会成为人类工作的大部分。

有评论者认为,一个让人类保持控制的未来不太可能,因为付钱请人这么做成本太高。已经有一些关于缺乏监督的 coding agent 删除生产数据库或造成其他类型损害的病毒式故事。但我们认为,这些更像“人咬狗”故事,而不是正在形成的新常态。它们之所以会病毒式传播,正是因为这种行为不负责任又不寻常,带有冲击力,同时也会反复提醒和教育社区,帮助大家警惕过度依赖 AI。就像那句格言说的,“如果它上了新闻,就不用太担心”。不过,如果想检测高风险任务中缺乏监督地使用 AI 的情况是否在增加,这本身也很有价值,而且应该放到整个经济范围内观察,不只看软件工程。

顺便说一句,三明治被压扁并不是一个新趋势,也不是 AI 独有的结果。20 多年前,美国劳工统计局开始把编程和软件工程分开统计。粗略地说,程序员只负责执行,而软件工程师管理的是三明治里更大的一部分。编程岗位不只一直在萎缩,薪资也低得多,因为它被视为苦力活。AI 只是加速了这个早已存在的趋势,进一步降低纯技术技能的价值。

软件工程与程序员就业对比。图表来源:The Washington Post。

这种模式,也就是即便 AI 越来越多地自动化中间层,人类仍然深度参与决策-执行-交付三明治两端,似乎广泛适用于大多数知识工作,只是在软件领域推进得最远。毕竟,复杂决策和责任承担在大多数领域都很常见。人们没有认识到这个现象,导致了许多关于工作岗位即将消失的过度自信预测,比如 AI 替代放射科医生的预测。

Vibe coding 不是 agentic engineering

围绕软件工程到底正在发生多大变化,人们之所以困惑,其中一个原因是“vibe coding”这个词被草率地用来指代一大堆实践。这个光谱的两端在概念上完全不同,而且相似之处远少于差异。

真正的 vibe coding 里,用户只是告诉 agent 要做什么,agent 运行时不监督,不审查代码,甚至可能没有审查代码的技能,也不评估输出,最多只是看到东西明显坏掉时注意一下。

这和大多数软件工程师实际使用 agent 的方式形成对照。后者把 agent 当工具使用,人类仍然保持控制,并为输出负责。好在,agentic engineering 这个词正在变得流行,用来描述这种实践。

随着 agentic engineering 成为常态,工程师正在发现,监督 coding agent 出乎意料地耗时间。比如,知名开发者、AI 转型记录者 Simon Willison 曾提到,他因为监督 agent,到上午 11 点就已经精神疲惫。这也符合我们的经验。

更多定量证据来自 SWE-chat,这是一个由开源开发者自愿接入日志工具而形成的 coding agent 交互数据集。研究发现,agent 生成的代码只有 44% 会进入用户提交;vibe-coded commit 引入漏洞的比例是纯人工 commit 的 9 倍;最常见的用户意图是理解已有代码,而不是生成新代码(19% 对 13%)。这个数据集存在自选择问题,所以我们不能只凭这项研究得出强结论,但它确实强化了许多其他证据:vibe coding 和 agentic engineering 的模式非常不同。

Agentic engineering 不是 vibe coding。

再强调一次,它们不是两个截然不同的类别,而是一条光谱的两端,中间地带很模糊。不是每个项目都要么是一次性小玩具,要么是任务关键型系统。不是每个工作流都能精确落在表格左列或右列。但对就业问题来说,关键含义仍然很稳:公司不能用不合格的 vibe coder 替代软件工程师来交付生产软件。

未来会怎样?

AI 乐观派可能会说,大规模裁员正在路上;它们还没发生,只是因为人类水平的软件工程能力刚刚出现,或者还没真正实现。但如果三明治模型是对的,这些预测就不会成真。AI 已经大幅压缩了三明治中间层,而且这种压缩实际上几十年前就开始了。所以,即便执行层变得即时且完美,相比现状也只是一个小变化。另外两层抵抗 AI 的原因,并不是能力不足。

事实上,软件工程岗位不但不会因为 AI 消失,软件工程师需求甚至可能增加。当软件,或者任何东西,因为技术生产率提升而变得更便宜时,人们会购买更多软件。用经济学黑话说,软件具有很高的“价格弹性”。而正如我们已经论证的,AI 不会替代软件工程师,也就是“替代弹性”很低,所以对更多软件的需求会转化为对更多软件工程师的派生需求。一个相关性没那么强但更抓眼球的经济学术语“杰文斯悖论”(Jevons’ paradox),在 AI 讨论里经常被拿来描述这个概念。

从历史上看,模式就是这样:美国程序员就业从 1950 年前后的接近零,增长到今天的数百万人。这和农业等职业形成鲜明对比,后者的劳动力需求因为机械化和自动化而被大幅摧毁。区别在于,人们摄入的热量大体是固定的,即便增加 25% 也会导致肥胖流行;而软件产量已经增长了一百万倍。现代汽车的各类车载计算机里,大概跑着上亿行代码。

如果代码需求存在天花板,我们离它还远得很。几乎所有认知工作都会从软件中受益。随着 AI 让编码变便宜,人们正在创造各种以前没必要做的一次性工具,不管是工作用途还是个人用途。

说清楚一点,虽然我们认为未来会有多得多的软件,也很可能有更多软件工程师,但这不代表大型科技公司会变得更大。如今,大多数软件工程师已经在非软件公司的内部团队工作,未来这个比例还可能继续增加。然后还有“AI rollups”这个想法,指的是风投或私募股权公司收购“主街”生意,比如牙科诊所、会计事务所之类,然后通过把软件工程师或 AI 工程师嵌入这些业务,从头开始把它们重建成“AI-native”。当然,最后它也可能只是炒作。现在判断还太早。

有些人预测,软件工程技能需求会因为民主化而下降。他们承认,未来软件产出会比以往任何时候都多,花在生产软件上的人类时间也会比以往任何时候都多,但这项工作会由不是软件工程师的人来做。这个想法是,AI 会把软件工程民主化到这样的程度:比如法律软件,可以由受过法律训练的人,而不是受过软件工程训练的人,更轻松地创造出来。

也许吧。但我们会押注反方向。在我们看来,这和把 vibe coding 混同于 agentic engineering、把执行层混同于整个决策-执行-交付三明治,是同一个陷阱。事实上,当我们回看编程史时,这类“我们正站在民主化门槛上”的说法一直存在。FORTRAN、COBOL、SQL 这些老语言在推出时,都伴随着非常突出的类似希望。但它没有发生。真正的门槛并不是学习语法,而是拥有足够熟练的判断力,能做出好决策,同时维持责任能力。

到头来,这个区别也许只是语义问题。看起来很清楚的是,人们花在让计算机做新事情上的时间会持续增加。这可能表现为构建软件,或者用 agent 管理复杂工作流,或者其他什么形式。它会要求软件技能、AI 技能和领域专业知识的混合。今天的软件工程师能否最好地适应并填补这些新角色,还有待观察。

关于适应的最后这一点,为本系列下一篇文章做了铺垫。软件领域的总劳动需求可能保持强劲,并不意味着大多数个体劳动者不会受到影响。我们会论证,AI 将给软件生产方式带来巨大的结构性变化,而这种变化会严重影响哪些软件工程师会受益、哪些会受损。这取决于他们所在公司的类型、地理位置、资历,以及他们适应的速度。

END

原文:https://www.normaltech.ai/p/why-ai-hasnt-replaced-software-engineers

本文为技术学习目的的翻译整理,原文版权归原作者及原发布平台所有。如原作者或版权方认为不适合发布,请联系删除或调整。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-06-28 15:34:30 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/809560.html
  2. 运行时间 : 0.159110s [ 吞吐率:6.28req/s ] 内存消耗:4,663.98kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=5f6914a456dd357eeadb9ef0513c48f7
  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.000907s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000712s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000286s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000263s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000456s ]
  6. SELECT * FROM `set` [ RunTime:0.000173s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000740s ]
  8. SELECT * FROM `article` WHERE `id` = 809560 LIMIT 1 [ RunTime:0.000502s ]
  9. UPDATE `article` SET `lasttime` = 1782632070 WHERE `id` = 809560 [ RunTime:0.012493s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000226s ]
  11. SELECT * FROM `article` WHERE `id` < 809560 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000422s ]
  12. SELECT * FROM `article` WHERE `id` > 809560 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000378s ]
  13. SELECT * FROM `article` WHERE `id` < 809560 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000717s ]
  14. SELECT * FROM `article` WHERE `id` < 809560 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001399s ]
  15. SELECT * FROM `article` WHERE `id` < 809560 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.001529s ]
0.160717s