当前位置:首页>python>【ANSA二次开发】基于Python的实体操作与错误调试机制研究

【ANSA二次开发】基于Python的实体操作与错误调试机制研究

  • 2026-08-18 23:10:42
【ANSA二次开发】基于Python的实体操作与错误调试机制研究

引言:CAE工具链中的自动化与脚本化趋势

在现代工程仿真领域,计算机辅助工程(CAE)已成为结构分析、热力学模拟、流体动力学和多物理场耦合研究的核心手段。随着复杂产品设计周期的缩短和仿真精度要求的不断提高,传统的手动建模方式已难以满足高效、可重复、可追溯的工程需求。因此,自动化建模与脚本化仿真流程逐渐成为主流趋势。

在众多 CAE 工具中,ANSYSABAQUS 和 NASTRAN 作为业界公认的高端有限元分析平台,广泛应用于航空航天、汽车制造、能源装备和电子封装等领域。而 ANSA 作为领先的前处理软件,以其强大的几何清理、网格划分、实体建模和格式转换能力,成为连接 CAD 与 FEA 的关键桥梁。

然而,单一工具的局限性决定了跨平台协作的必要性。为了实现从 CAD 到 FEA 的无缝对接,各大厂商纷纷开放 API 接口,支持 Python 等脚本语言进行自动化控制。本文将围绕 ANSA 提供的 Python API(特别是 base 模块) 展开深入探讨,重点分析其核心功能——实体(Entity)管理、字段赋值、错误与警告报告机制,并结合实际代码示例,全面解析如何构建健壮、可维护的 CAE 自动化脚本系统。


一、ANSA 基础概念:Entity 与数据模型

在 ANSA 的架构中,Entity 是所有几何与拓扑对象的基本单元。无论是节点(NODE)、单元(SOLIDSHELL)、边界条件(BC)、载荷(LOAD)还是材料属性(MATERIAL),在 ANSA 内部都被统一表示为一个 Entity 对象。

每个 Entity 对象具有以下关键属性:

  • deck
    :所属数据集类型,如 constants.ABAQUSconstants.NASTRAN
  • _id
    :唯一标识符,用于在内存中定位实体。
  • type
    :实体类型名称,如 "NODE""SOLID""GRID"
  • ansa_type()
    :返回实体的内部类型编码,用于调试和类型判断。

1.1 Entity 的创建与引用

import ansafrom ansa import basefrom ansa import constants# 创建一个 ABAQUS 格式的 NODE 实体n = base.CreateEntity(constants.ABAQUS, "NODE")print(n)  # 输出示例: Entity: 0x...: type: 1101(NODE), GRID) id:-2

注意CreateEntity 是创建新实体的入口函数,它接收两个参数:数据格式(deck)和实体类型(type)。返回值是一个 Entity 对象,其 _id 由 ANSA 内部分配,保证全局唯一。

⚠️ 重要提示:Entity 对象在 Python 中是轻量级包装器,其底层指向 ANSA 内存中的实际数据结构。这意味着,一旦底层实体被删除(如通过 DeleteEntity),该 Python 对象即变为失效状态

1.2 Entity 的引用与比较

nn = base.Entity(constants.ABAQUS, n._id"NODE")if n == nn:    print("OK: objects are equal")else:    print("ERROR")

base.Entity(deck, id, type) 用于通过已有 _id 和类型重建实体对象。虽然 n 和 nn 指向同一个物理实体,但它们是两个独立的 Python 对象。通过 == 比较时,ANSA 的底层机制会判断两个对象是否引用同一实体,从而实现逻辑相等判断

这一机制使得脚本可以灵活地在“创建”与“引用”之间切换,避免重复建模。


二、实体属性操作:字段赋值与数据获取

2.1 字段值的设置与获取

在有限元模型中,实体通常由一系列字段构成。例如,一个 GRID 实体包含坐标 X1, X2, X3;一个 SOLID 实体包含节点引用 G1, G2, ..., G8 和材料属性 PID

ANSA 提供了 set_entity_values 和 get_entity_values 方法,用于批量读写字段值。

示例:创建 8 个节点并构建六面体单元

nodes = []n_coords = [    (0,0,0), (1,0,0), (1,1,0), (0,1,0),    (0,0,1), (1,0,1), (1,1,1), (0,1,1)]# 1. 批量创建节点for i in range(8):    vals = {}    for j, v in enumerate(("X1""X2""X3")):        vals[v] = n_coords[i][j]    n = base.CreateEntity(constants.NASTRAN, "GRID", vals)    nodes.append(n)# 2. 构建 CHEXA 单元vals = {}for i, n in enumerate(nodes):    vals[f"G{i+1}"] = n._idvals["PID"] = 1vals["type"] = "CHEXA"solid = base.CreateEntity(constants.NASTRAN, "SOLID", vals)

上述代码展示了如何:

  1. 使用坐标列表批量创建 GRID 节点;
  2. 通过字典 vals 映射节点标签(如 G1)到其 _id
  3. 调用 CreateEntity 构建 SOLID 实体。

这体现了 ANSA API 的声明式建模风格:通过结构化数据描述实体,由系统自动完成底层构建。

2.2 字段值的动态读取

shell = base.Entity(constants.ABAQUS, "SHELL", 1)vals = shell.get_entity_values(constants.ABAQUS, ("G1""G2""G3""G4"))print(vals) # 输出示例: {'G1': 123, 'G2': 124, ...}

get_entity_values 用于从指定实体中提取字段值。它接收:

  • deck
    : 数据格式;
  • field_list
    : 字段名列表;

返回值为字典,键为字段名,值为对应实体 ID 或数值。该方法常用于验证模型完整性、提取边界条件或进行数据迁移。


三、错误与警告机制:debug 参数的深度剖析

在自动化脚本中,错误处理能力直接决定了流程的鲁棒性。ANSA 的 set_entity_values 方法提供了强大的调试支持,其关键在于 debug 参数。

3.1 debug 参数的三种取值

  • constants.REPORT_SILENCE
    :静默模式,仅返回错误码;
  • constants.REPORT_ALL
    :返回完整错误/警告报告;
  • 默认
    :不提供调试信息,仅返回整数结果。

3.2 返回值的双重结构

情况一:未提供 debug 参数

ret = ent.set_entity_values(constants.ABAQUS, list)if not ret == 0:    print("success")else:    print("Error occurred")

此时返回值为整数:0 表示成功,非零表示失败。但不提供具体错误信息,适用于生产环境中的快速判断。

情况二:提供 debug 参数(如 REPORT_ALL

ret, debug_report = ent.set_entity_values(    constants.ABAQUS,     list,     debug=constants.REPORT_ALL)if not ret:    print("No errors or warnings found!")else:    pprint.pprint(debug_report)

此时返回值为元组:(int, dict),其中:

  • int
    :错误码(0 表示无错);
  • dict
    :键为字段名,值为包含 type 和 message 的字典。

debug_report 结构示例:

{    "G21": {        "type": "error",        "message": "Node ID 8 is not valid or does not exist"    },    "G3": {        "type": "warning",        "message": "Node ID 146564655656 is out of range"    }}

⚠️ 重要规则:一旦某个字段引发错误,其余字段将不再处理。这确保了错误传播的原子性,防止部分更新导致模型不一致。

3.3 实际应用场景分析

假设我们尝试设置一个 SOLID 实体的节点引用,但传入了无效 ID:

ent = base.GetEntity(constants.ABAQUS, "SOLID", 16583)list = {"G21": 8, "G3": 146564655656}debug_mode = constants.REPORT_ALLret, debug_report = ent.set_entity_values(    constants.ABAQUS,     list,     debug=debug_mode)if not ret:    print("No errors or warnings found!")else:    pprint.pprint(debug_report)

输出可能为:

{    "G21": {        "type": "error",        "message": "Node ID 8 is not valid or does not exist"    }}

这意味着:

  • G21
     字段因节点不存在而失败;
  • G3
     字段未被处理(即使其 ID 也异常);
  • 整个 set_entity_values 操作终止。

这种设计符合“失败即终止”原则,避免了部分更新带来的模型不一致风险。


四、实体生命周期管理:创建、使用与销毁

4.1 实体的可访问性检查

在脚本执行过程中,实体可能因外部操作(如用户删除、脚本误删)而失效。ANSA 提供 is_usable() 方法检测实体状态。

shell = shells[0]  # 假设 shells 是实体列表if not shell.is_usable():    print("This object is not usable")

该方法返回布尔值,用于防止对已删除实体的操作引发崩溃。在生产脚本中,建议在关键操作前加入此检查。

4.2 强制删除机制

n = base.Entity(constants.ABAQUS, 1"NODE")base.DeleteEntity(n, force=True)

DeleteEntity 用于删除实体。force=True 表示即使该实体被其他对象引用,也强制删除。这在清理临时模型或修复错误状态时非常有用,但需谨慎使用,避免引发连锁删除。


五、面向对象扩展:自定义 Entity 类型

ANSA API 支持通过继承 base.Entity 实现自定义类,提升代码可读性与可维护性。

class myAnsaObject(base.Entity):    def __init__(self, deck, _idtype):        super().__init__(deck, _idtype)    def do_stuff(self):        n = myAnsaObject(constants.ABAQUS, 1"NODE")        print(n.position)  # 可调用自定义属性或方法

通过封装,可将常见操作(如获取坐标、设置材料)封装为方法,形成领域专用语言(DSL),使脚本更接近工程语言。


六、实战案例:构建自动化建模流程

以下是一个完整的自动化建模流程示例,涵盖从节点创建、单元构建、属性设置到错误检查的全过程。

def create_solid_model():    # 1. 创建 8 个节点    nodes = []    coords = [        (0,0,0), (1,0,0), (1,1,0), (0,1,0),        (0,0,1), (1,0,1), (1,1,1), (0,1,1)    ]    for i, c in enumerate(coords):        vals = {"X1": c[0], "X2": c[1], "X3": c[2]}        node = base.CreateEntity(constants.NASTRAN, "GRID", vals)        nodes.append(node)    # 2. 构建 CHEXA 单元    node_map = {f"G{i+1}": n._id for i, n in enumerate(nodes)}    node_map["PID"] = 1    node_map["type"] = "CHEXA"    # 3. 设置值并启用调试    solid = base.CreateEntity(constants.NASTRAN, "SOLID", {})    ret, debug_report = solid.set_entity_values(        constants.NASTRAN,         node_map,         debug=constants.REPORT_ALL    )    if ret != 0:        print("Model creation failed:")        pprint.pprint(debug_report)        return False    print("Solid model created successfully.")    return True

该函数具备:

  1. 错误检测
  2. 详细日志输出
  3. 可扩展性
    (便于后续添加材料、边界条件);
  4. 模块化设计
    ,易于集成到更大系统中。

七、最佳实践建议

  1. ✅ 始终启用 debug 模式进行开发测试;
  2. ✅ 在关键操作前调用 is_usable() 检查实体有效性;
  3. ✅ 使用 constants.REPORT_ALL 在脚本中捕获所有警告;
  4. ❌ 避免在 set_entity_values 中传入无效字段名或 ID;
  5. ⚠️ 合理使用 force=True 删除,防止误删;
  6. 📦 将常用操作封装为类或函数,提高可读性;
  7. 📝 使用 pprint 格式化输出调试信息,便于阅读。

八、结语:迈向智能 CAE 自动化时代

本文系统梳理了 ANSA Python API 中 Entity 操作的核心机制,重点剖析了 set_entity_values 的错误处理逻辑与 debug 参数的深层设计思想。通过实际代码示例,展示了如何构建健壮、可维护的 CAE 自动化脚本。

在智能制造与数字孪生快速发展的今天,掌握此类接口编程能力,不仅能够大幅提升建模效率,更能为后续的参数化设计、优化仿真、AI 驱动建模奠定基础。

未来,随着 Python 生态在工业软件中的深入融合,脚本化建模将成为 CAE 工程师的核心竞争力。掌握 ANSA 的 API 机制,正是通往这一未来的关键一步。

最新文章

随机文章

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