当前位置:首页>Excel>告别Excel手动合并!Python一键批量处理神器,效率提升10倍!

告别Excel手动合并!Python一键批量处理神器,效率提升10倍!

  • 2026-04-13 20:56:07
告别Excel手动合并!Python一键批量处理神器,效率提升10倍!

还在一个个复制粘贴Excel文件吗?这个工具让你告别加班!

每月月底,你是不是还在为合并几十个Excel报表而头疼?复制粘贴到手抽筋,格式错乱到崩溃?今天给大家分享一个我开发的Python Excel万能合并工具,只需点击几下,就能自动合并多个Excel文件,还能保留格式和样式!

软件界面

一、办公人的福音:告别重复劳动

这个工具专为需要处理大量Excel数据的职场人士设计:

  • 财务人员:合并月度报表

  • HR:汇总员工信息表

  • 运营:整合销售数据

  • 学生:合并实验数据

传统手动合并的痛点:❌ 一个个文件打开复制粘贴❌ 格式样式不统一❌ 容易漏掉数据❌ 耗费大量时间

使用我们的工具:✅ 一键批量处理上百个文件✅ 智能保留原始格式✅ 自动跳过空行和无效数据✅ 支持主键列筛选✅ 保存配置,下次直接使用

二、工具核心功能亮点

🚀 四大核心功能

  1. 批量文件选择

    • 支持单个文件添加

    • 支持整个文件夹导入

    • 实时显示文件列表和数量

  2. 智能合并选项

    • 保留第一个文件的表头

    • 保持原始格式样式

    • 跳过空行,清理数据

    • 添加来源文件列,方便追溯

  3. 高级筛选功能

    • 自定义起始行(跳过标题)

    • 主键列筛选(按关键列合并)

    • 智能数据处理

  4. 专业输出管理

    • 自定义保存位置

    • 自动生成带时间戳的文件名

    • 合并后自动打开文件

    • 配置自动保存

📊 实际应用场景

场景1:合并30个分公司的销售报表

  • 每个文件格式相同,需要跳过前3行标题

  • 按"订单号"列去重合并

  • 保留原始的颜色标记

场景2:汇总学生成绩单

  • 每个班级一个Excel文件

  • 需要统一表头

  • 添加"班级来源"列

  • 排除成绩为空的行

三、技术架构深度解析

整体架构设计

核心架构:┌─────────────────────────────────────────┐             GUI界面层                      - tkinter组件构建                        - 现代化UI设计                           - 实时进度反馈                         └─────────────────────────────────────────┘            业务逻辑层                      - 文件批量处理                           - 格式智能识别                           - 数据合并算法                         └─────────────────────────────────────────┘            数据处理层                      - openpyxl读写Excel                     - 格式样式迁移                           - 配置持久化存储                       └─────────────────────────────────────────┘

核心类解析

class ExcelMergerTool:    """主控制类 - 实现完整的合并流程"""    def __init__(self, root):        # 初始化配置和UI        self.file_paths = []           # 文件路径列表        self.options = {}              # 合并选项        self.output_path = ""          # 输出路径    def create_widgets(self):          # 创建用户界面    def add_files(self):              # 添加文件    def add_folder(self):             # 添加文件夹    def merge_excel_files(self):      # 核心合并逻辑    def save_config(self):            # 保存配置    def load_config(self):            # 加载配置

关键技术实现

1. 现代化GUI界面

def create_widgets(self):    # 使用LabelFrame分组,界面清晰    file_list_frame = tk.LabelFrame(        left_frame,        text="文件列表",        font=("微软雅黑"11"bold"),        bg=self.frame_bg,        fg=self.accent_color,        padx=15,        pady=15    )    # 扁平化按钮设计    self.add_files_btn = tk.Button(        button_toolbar,        text="添加文件",        command=self.add_files,        bg=self.button_color,        fg="white",        font=("微软雅黑"10),        padx=15,        pady=6,        cursor="hand2",        relief=tk.FLAT,        bd=0    )

设计理念

  • 使用Frame和LabelFrame进行视觉分组

  • 精心挑选的色彩方案(莫兰迪色系)

  • 扁平化按钮设计,现代感强

  • 合理的间距和布局,提升用户体验

2. 智能文件管理

def add_folder(self):    """递归添加文件夹中的所有Excel文件"""    excel_extensions = ('.xlsx''.xls''.xlsm')    files_found = []    # 使用os.walk递归遍历所有子文件夹    for root_dir, _, filenames in os.walk(folder):        for filename in filenames:            if filename.lower().endswith(excel_extensions):                full_path = os.path.join(root_dir, filename)                files_found.append(full_path)    # 智能去重和添加    added_count = 0    for file in files_found:        if file not in self.file_paths:  # 避免重复添加            self.file_paths.append(file)            self.file_listbox.insert(tk.END, f"{os.path.basename(file)}")            added_count += 1

特色功能

  • 支持递归文件夹遍历

  • 自动识别三种Excel格式

  • 智能去重,避免重复添加

  • 实时更新文件计数

3. 核心合并算法

def merge_excel_files(self, start_row):    """核心合并逻辑 - 支持格式保留和主键筛选"""    # 1. 读取第一个文件作为模板    first_wb = load_workbook(first_file)    first_ws = first_wb.active    # 2. 提取表头格式    if preserve_header:        header_row = []        header_formats = []        for j, cell in enumerate(first_ws[1], 1):            header_row.append(cell.value)            if preserve_format:                # 深度复制单元格格式                cell_format = {                    'font': cell.font.copy() if cell.font else None,                    'fill': cell.fill.copy() if cell.fill else None,                    'border': cell.border.copy() if cell.border else None,                    'alignment': cell.alignment.copy() if cell.alignment else None,                    'number_format': cell.number_format                }                header_formats.append(cell_format)    # 3. 主键列筛选逻辑    if key_column_idx > 0:        if key_column_idx <= len(row_data):            key_value = row_data[key_column_idx - 1]            if key_value is None or str(key_value).strip() == '':                continue  # 跳过主键为空的行    # 4. 多线程处理,防止界面卡顿    thread = threading.Thread(target=self.merge_excel_files, args=(start_row,))    thread.daemon = True    thread.start()

算法亮点

  • 模板化处理:以第一个文件为模板

  • 格式深度复制:完整保留字体、颜色、边框等格式

  • 智能筛选:支持按主键列筛选有效数据

  • 多线程处理:大数据量时不卡界面

4. 配置持久化

def save_config(self):    """自动保存用户设置到本地"""    config = {        "file_paths"self.file_paths,        "output_path"self.output_path,        "options": {k: v.get() for k, v in self.options.items()},        "start_row"self.start_row_var.get(),        "key_column"self.key_column_var.get()    }    # 保存到用户目录,确保有权限    config_path = os.path.join(os.path.expanduser("~"), ".excel_merger_config.json")    with open(config_path, 'w', encoding='utf-8'as f:        json.dump(config, f, ensure_ascii=False, indent=2)

用户体验优化

  • 自动记住上次的文件列表

  • 保存所有选项设置

  • 跨会话持久化

  • 使用JSON格式,易读易维护

5. 进度反馈系统

def update_progress(self, value, message=None):    """实时更新进度和状态"""    self.progress_var.set(value)    if message:        self.progress_label.config(text=message)    self.root.update_idletasks()  # 强制刷新界面def set_ui_state(self, enabled):    """智能控制界面状态"""    state = tk.NORMAL if enabled else tk.DISABLED    # 统一禁用/启用所有控件    self.add_files_btn.config(state=state)    self.merge_btn.config(state=state)    # 修改按钮文本和颜色    if enabled:        self.merge_btn.config(text="开始合并", bg=self.success_color)    else:        self.merge_btn.config(text="正在合并...", bg="#95a5a6")

交互设计

  • 实时进度条显示

  • 详细的状态提示

  • 处理时禁用界面防止误操作

  • 按钮状态和颜色变化

四、快速上手指南

安装要求

# 只需要两个库pip install openpyxl# tkinter是Python标准库,无需安装

使用方法

  1. 运行程序

python excel_merger.py
  1. 添加文件

    • 点击"添加文件"选择多个Excel

    • 或点击"添加文件夹"批量导入

  2. 设置参数

    • 起始行:从第几行开始读取数据

    • 主键列:按哪一列进行数据筛选

    • 选择输出位置

  3. 开始合并

    • 点击"开始合并"

    • 等待进度条完成

    • 自动打开合并后的文件

配置示例

场景:合并销售报表

起始行:4(跳过前3行标题)主键列:B(按订单号列)选项:✓保留表头 ✓保留格式 ✓跳过空行

五、性能优化技巧

1. 内存优化

# 使用data_only模式只读数据,不加载公式wb = load_workbook(file_path, data_only=True)

2. 异常处理

try:    # 合并逻辑except Exception as e:    error_details = traceback.format_exc()    messagebox.showerror(        "合并失败",        f"合并过程中出现错误:\n\n{str(e)}\n\n"        f"详细信息:\n{error_details}"    )

3. 批量处理优化

  • 先读取所有文件路径

  • 分批处理大文件

  • 及时释放内存

六、扩展与二次开发

可扩展功能

  1. 数据清洗模块

def clean_data(self, row_data):    # 去除空格    # 格式标准化    # 数据验证
  1. 高级筛选

def advanced_filter(self, row_data):    # 正则表达式匹配    # 多条件筛选    # 自定义过滤规则
  1. 统计报告

def generate_report(self, merged_data):    # 数据统计    # 生成图表    # 输出PDF报告
  1. 云存储支持

def upload_to_cloud(self, file_path):    # 支持OneDrive/Google Drive    # 自动备份

企业级增强

  • 权限控制:不同用户不同操作权限

  • 审批流程:合并前需主管审批

  • 版本管理:保留每次合并记录

  • API接口:与其他系统集成

七、常见问题解决

Q1: 合并后格式丢失?

A: 确保勾选"保留第一个文件的格式"选项

Q2: 中文乱码?

A: 工具使用utf-8编码,确保原始文件编码正确

Q3: 大文件合并卡顿?

A: 建议分批合并,或升级电脑内存

Q4: 如何合并不同格式的文件?

A: 目前需要表头一致,未来版本将支持智能匹配

八、效率对比

操作方式
10个文件
50个文件
100个文件
手动复制
30分钟
2.5小时
5小时+
本工具
1分钟
3分钟
8分钟

效率提升:平均提升10-30倍!

使用建议

  1. 首次使用先测试少量文件

  2. 重要数据先备份

  3. 根据需求调整起始行

  4. 利用配置保存功能提升效率

结语

这个Excel合并工具不仅解决了实际问题,更展示了Python在办公自动化中的强大能力。从GUI设计到文件处理,从格式保到多线程优化,每一个细节都体现了实用性和专业性。

职场人士:告别重复劳动,提升工作效率Python学习者:学习完整项目开发,掌握实战技能开发者:可在此基础上二次开发,满足个性化需求

工具虽小,却包含了:

  • 现代化GUI设计

  • 健壮的错误处理

  • 友好的用户体验

  • 可扩展的架构设计

最后的话技术是为了解决问题而存在的。这个工具最初就是为了解决我合并报表的痛苦而开发的。希望它也能帮助到同样被Excel困扰的你!

如果你在使用中遇到问题,或者有改进建议,欢迎在评论区交流。如果你在此基础上开发了更强大的功能,也欢迎分享给大家!

工具信息

  • 开发语言:Python 3

  • 核心库:tkinter + openpyxl

  • 代码行数:约800行

  • 适用平台:Windows/Mac/Linux

标签#Python办公自动化 #Excel合并 #效率工具 #开源项目 #编程实用技巧

互动话题你在工作中最常遇到的Excel痛点是什么?希望看到什么样的自动化工具?留言告诉我,说不定下一个工具就是为你开发的!

分享不易,扫码关注、点赞、点在看,支持一下吧

最新文章

随机文章

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