乐于分享
好东西不私藏

【设计工具】ZOZO开源的这个插件,可能是一条更可信的虚拟服装生产线

【设计工具】ZOZO开源的这个插件,可能是一条更可信的虚拟服装生产线

日本最大服装电商 ZOZO 最近把自家的物理仿真接触求解器 ppf-contact-solver 开源了。表面看,它是一个能接进 Blender 的布料、绳索、软体仿真工具;但更准确地说,它解决的是一个设计行业长期很烦的小问题:东西碰到一起时,别穿过去。

这句话听起来像废话。可是做过 3D 服装、游戏角色、虚拟拍摄的人都知道,穿模不是小瑕疵。衣服穿过身体、绳子穿过自己、布料像橡皮一样被拉长,这些问题会让一个本来很贵的数字资产瞬间露馅。ZOZO 这套工具的价值,也正是在这里。

PPF Contact Solver teaser

它到底是什么

ppf-contact-solver 的正式名字是 ZOZO's Contact Solver。项目背后是 ZOZO / st-tech,核心技术来自 Ryoichi Ando 等人的论文 「A Cubic Barrier with Elasticity-Inclusive Dynamic Stiffness」,已发表在 ACM Transactions on Graphics Vol.43 No.6,也就是 SIGGRAPH Asia 2024 这一档。

官方给出的能力很直接:

  • 接触求解结果可以做到 penetration-free,也就是无穿透;
  • 面片拉伸有严格上限,例如 1% 或 5%,不会像游戏里常见的布料那样被拉成橡胶;
  • 大规模案例可以处理超过 1.8 亿个接触点;
  • 有 JupyterLab 前端,也有 Blender 5 的官方插件;
  • 支持远程 GPU、AWS / vast.ai 这样的云端算力;
  • 甚至暴露 MCP server,让 LLM 可以通过自然语言驱动 Blender 建场景、调参数、跑仿真;
  • Apache 2.0 许可,可商用,也可用于闭源产品。

但官方也把冷水泼得很清楚:它是为 offline uses 做的,不是实时工具。你不能期待它像游戏引擎里的实时布料那样随拖随动。它要换来的,是更可信的接触结果。

PPF 工作流结构图

为什么“无穿透”这么难

薄物体仿真是物理模拟里很讨厌的一类问题。布料很薄,绳子很细,它们不仅会碰到别的东西,还会频繁碰到自己。间隙小到一定程度时,传统方法容易在两种坏结果里摇摆:要么穿过去,要么为了不穿过去变得非常慢、非常不稳定。

ZOZO 这篇论文的核心,是用 cubic barrier 处理接触与应变限制。外部报道里有一个比较好理解的说法:它在传统 logarithmic barrier 吃力的极窄间隙里,能把 tight strain-limiting gaps “撑开”,从而让接触密集的仿真更可扩展。

翻成设计师能理解的话:它不是让布料“看起来差不多没有穿模”,而是在求解过程中把“不能穿透”和“不能拉过头”放进了硬约束逻辑里。项目的 GitHub Actions 也不是只跑视频看效果,而是在每一步末尾做 explicit intersection checks;如果检测到交叉,就直接报错。测试通过,才说明这一段仿真确实没有穿透。

这也是它和很多视觉型布料效果的区别。视觉型工具追求快,穿一点可以靠镜头、手修、缓存和后期遮掉。ZOZO 这套东西更像生产工具:慢一点可以接受,但结果要经得起检查。

示例不是炫技,而是在覆盖服装行业最麻烦的接触场景

官方 Gallery 里有很多例子,类型覆盖得很有意思:压缩、褶皱、充气、扭转、布料悬垂、绳索缠绕、复杂自接触。它们不是单纯为了做一组漂亮 demo,而是在试探设计和商品内容生产里常见的麻烦边界。

比如一个很基础的场景:把一块布盖到球体上。它看似简单,但布料与球、布料自身褶皱、角点固定、应变限制都会一起出现。

布料覆盖球体 GIF

再看 woven 和 noodle 这类例子,复杂点在于大量细长结构之间的自接触。绳、带、针织物、编织结构,恰好都是服装和配饰里很常见,但传统仿真很容易翻车的对象。

编织圆筒扭转 GIF
细杆结构落入碗形容器 GIF

needlefitting 这类 JupyterLab 示例则更接近衣物、身体、局部细节之间的接触问题。对服装行业来说,真正难的往往不是让一块布自然飘起来,而是让它在人体、缝线、边缘、夹层、配饰之间稳定地贴合。

Needle 示例 GIF
Fitting 示例 GIF

还有一个很有代表性的反例素材:domino artifacts。它提醒我们,接触仿真不是“看起来会动”就结束了。错误的接触处理会产生堆叠、粘连、卡顿、异常跳动等 artifacts,这些问题一旦进入生产后段,会变成很贵的人工修复成本。

接触仿真中的 artifacts 示例

Blender 插件真正改变的是入口

如果只有论文和 Jupyter Notebook,这个项目更像研究者与技术美术的工具。Blender 插件把它往创作端推了一步。

官方插件的逻辑是:设计师或技术美术在本地 Blender 里建场景、设置组、约束和参数;真正的仿真在本机或远程 GPU 服务器上跑;结果再被拉回 Blender 视窗播放、烘焙或导出。这样一来,macOS 用户也能用,因为 Mac 只负责 UI,NVIDIA GPU 可以在远端。

Blender 远程仿真工作流 GIF

这一点对服装电商很重要。很多团队的创作端并不在 Linux 工作站上,而是在 Mac、Windows、远程渲染、云盘、DCC 软件之间来回切。把仿真能力塞进 Blender,比要求设计师去理解一堆 solver 命令友好得多。

更激进的是 MCP。官方示例里,Codex 可以通过 MCP server 驱动 Blender 和 solver,从自然语言 prompt 开始搭一个 bowl-and-spheres 场景,调参数并运行仿真。

MCP 驱动 Blender 仿真 GIF

这件事短期看有点实验性,但方向很清楚:未来的仿真工作流可能不是“设计师一个个点面板”,而是“我描述一个衣摆被风吹起、被包带压住、不能穿过腿部的场景”,系统把建模、约束、参数、计算、缓存串起来。AI 在这里不是替你画一张漂亮图,而是替你操作一套复杂工具链。

1.8 亿接触点很吓人,但别误会它的含义

官方最容易被传播的数字,是超过 180 M contacts。具体大规模案例里:

  • large-twist:3.2 M 顶点、6.4 M 面、56.7 M 接触点,2000 帧,每帧 46.4 秒;
  • large-five-twist:8.2 M 顶点、16.4 M 面、184.1 M 接触点,2413 帧,每帧 144.5 秒;
  • large-woven:2.7 M rods、8.9 M 接触点,946 帧,每帧 436.8 秒。

这些案例跑在 vast.ai 的 RTX 4090 上,官方也说它们可能要几天甚至几周,所以没有纳入 GitHub Action 测试。

Large five-twist 示例

所以,1.8 亿不是“你的电脑可以实时跑 1.8 亿接触点”。它更像一个上限证明:这套方法不是只在玩具场景里成立,也有能力处理真实生产里会出现的高密度接触。

普通示例的成本更接地气。官方 AWS 预算表用 g 6.2 xlarge / NVIDIA L 4 估算,云实例约 1 美元/小时,部署约 8 分钟。比如 fitting 约 1.54 分钟 / 0.03 美元,drape 约 3.5 分钟 / 0.10 美元,woven 约 34.6 分钟 / 0.58 美元,twist 约 55 分钟 / 0.91 美元。

这说明它不是消费级实时插件,但也不是只能留在实验室。更像是:当一个结果值得算,成本可以被生产流程吸收。

对设计师的影响:少一点“修穿模”,多一点“设计评审前置”

我觉得它对设计师最直接的影响,不是让每个视觉设计师都去学 CUDA 或物理仿真,而是把复杂软体效果提前到设计评审阶段。

现在很多 3D 服装流程的问题在于,早期效果可以很快出,但可信度不够。衣服是否真的能这样垂?包带压住布料后会不会形成合理褶皱?绳结、腰带、围巾、针织纹理、层叠裙摆之间会不会穿插?这些问题如果靠后期修图解决,设计判断其实已经滞后了。

有了更可靠的接触求解,设计师可以更早看到“物理上说得过去”的结果。它会影响几个具体环节:

  1. 「虚拟样衣」:减少因穿模导致的误判,让设计评审更接近真实布料行为。
  2. 「电商商品图」:复杂悬挂、折叠、搭配、层叠穿搭可以更多走数字生成,而不是每次都拍摄或大量修图。
  3. 「数字人试穿」:衣物与身体、配饰、头发之间的接触更可信,尤其对近景内容更重要。
  4. 「技术美术资产生产」:绳、带、布、软体道具可以通过可复现仿真生成缓存,减少手工调动画。

但我不认为它会立刻“解放设计师”。短期更现实的变化,是技术美术、3 D 服装工程师、自动化内容团队先用起来,然后把可靠结果封装给设计师。

对行业的影响:服装电商在把“3 D 内容”变成基础设施

ZOZO 做这件事有行业逻辑。服装电商天然依赖视觉内容,但传统拍摄贵、慢、SKU 多、搭配变化多。大家都想用 3 D、虚拟模特、数字样衣、AI 生成图来提高内容生产效率。问题是,服装不是硬表面商品,它非常依赖“接触”。

一件衣服是否可信,往往就取决于几个细节:领口有没有穿过脖子,袖子有没有插进身体,裙摆有没有和腿打架,包带有没有真的压住布料,褶皱是不是被拉得像橡胶。

所以,ZOZO 开源接触求解器这件事,比“发一个插件”更像是在补服装数字化基础设施的一块短板。它把几件事连起来了:

  • 论文级的无穿透接触算法;
  • 可商业使用的 Apache 2.0 开源实现;
  • Blender 插件入口;
  • JupyterLab / Python 脚本化入口;
  • 云 GPU 工作流;
  • MCP / LLM 自动化接口;
  • 自动测试和交叉检查。

这条链路如果成熟,服装行业的 3D 内容生产会从“单个艺术家调出好看的图”,慢慢走向“可批量、可验证、可恢复、可自动化的仿真流程”。这是更大的变化。

也别把它神化

Ryoichi Ando 在外部报道里说得很克制:这不是现有工具的 drop-in replacement。它慢,UI 还有很多手动步骤,仍有 rough edges;自动化测试也不能覆盖一切,困难案例里 simulator 仍可能 stall。文档和教程也还在快速完善中。

这段话很重要。一个开源物理求解器最怕被传播成“穿模终结者,游戏马上无 bug”。事实不是这样。80 Level 在 2025 年报道论文时也提到,这个方向对当前游戏来说仍然太贵,但可能影响下一代物理仿真。

我的判断是:

  • 对实时游戏,它现在更像研究和未来技术储备;
  • 对影视、广告、虚拟拍摄、服装电商,它更接近可落地的离线生产工具;
  • 对普通 Blender 用户,它值得尝鲜,但需要接受远程算力、参数调试和失败重跑;
  • 对设计团队,它最适合被封装进内部流程,而不是直接丢给每个设计师。

最后

ppf-contact-solver 最有意思的地方,不是它让布料动起来,而是它试图让布料“不要撒谎”。

AI 生成图可以很快给你一件漂亮衣服,实时引擎可以很快给你一个会飘的披风,但当你要让商品、样衣、数字人、配饰和布料进入真实生产流程时,穿模会变成信任问题。

ZOZO 这次开源,把一个原本偏研究、偏内部的接触求解能力,放到了 Blender、云 GPU 和 MCP 的交汇处。它还不轻巧,也不适合所有人。但方向很清楚:未来的服装设计和数字内容生产,不会只比谁生成得快,还会比谁生成得可信。

如果说过去几年 3D 服装行业在追求“更像照片”,那接下来这类工具要解决的是另一件事:让照片背后的物理关系也站得住。

「更多 AI 前沿技术与设计灵感,欢迎关注「设计小站」公众号(ID:sjxz00),一起探索科技与设计的融合创新。」

资料来源

  • GitHub: https://github.com/st-tech/ppf-contact-solver
  • 官方文档: https://st-tech.github.io/ppf-contact-solver/
  • ACM DOI: https://dl.acm.org/doi/abs/10.1145/3687908
  • 80 Level: https://80.lv/articles/new-open-source-physics-engine-for-blender-released
  • 80 Level: https://80.lv/articles/new-simulation-method-to-achieve-accuracy-in-collision-physics
  • PixelSham: https://www.pixelsham.com/2026/05/20/the-official-blender-add-on-for-zozos-contact-solver-an-open-source-physics-solver/
  • 3 D 人: https://3dnchu.com/archives/zozos-contact-solver-b3d/
基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-05-24 12:57:41 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/661572.html
  2. 运行时间 : 0.263800s [ 吞吐率:3.79req/s ] 内存消耗:4,861.87kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=673fefed64264d9e2217cc9a144480ac
  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.001091s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001872s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000793s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000881s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.002060s ]
  6. SELECT * FROM `set` [ RunTime:0.000801s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001973s ]
  8. SELECT * FROM `article` WHERE `id` = 661572 LIMIT 1 [ RunTime:0.010009s ]
  9. UPDATE `article` SET `lasttime` = 1779598661 WHERE `id` = 661572 [ RunTime:0.015262s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.001634s ]
  11. SELECT * FROM `article` WHERE `id` < 661572 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001788s ]
  12. SELECT * FROM `article` WHERE `id` > 661572 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001122s ]
  13. SELECT * FROM `article` WHERE `id` < 661572 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.002314s ]
  14. SELECT * FROM `article` WHERE `id` < 661572 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.009215s ]
  15. SELECT * FROM `article` WHERE `id` < 661572 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.002479s ]
0.265460s