pxpz纯 PHP · ThinkPHP 8
唯一案例 · ThinkPHP 8

行业协会官网

原站用纯 PHP 实现(GBK 编码,原生模板 + PDO 直连);演示站用 ThinkPHP 8 重写(路由 / 控制器 / ORM / 中间件)。版式、URL 形态、后台增删改查完全一致,原站不停机、数据不丢。

重建范围

原站是纯 PHP 实现:GBK 编码、原生模板、PDO 直连 SQLite。内容、栏目、律所、律师以及所有扩展字段整体迁入 ThinkPHP 8,前台模板原样保留,所以版式一处也没变。

硬约束

  • 重建全程原站不能停机,也不能被改动
  • URL 形态必须继续可用,包括分页与搜索参数
  • 后台行为要一致:每页条数、筛选项、编辑页字段

怎么证明一样

把原站和重建站逐页抓下来对比:DOM 节点数、文本块、标题。3,183 页,差异为 0。

原站与演示站

原站 · 纯 PHP

  • 原生 PHP 模板,页面里直接写查询
  • PDO 直连 SQLite,SQL 散在页面
  • 单入口手写路由 + 正则改写
  • 登录判断写在每个后台文件开头

演示 · ThinkPHP 8

  • 路由规则 + 控制器分派,URL 形态一条条声明
  • think-orm 模型与查询构建器,视图不碰 SQL
  • 控制器中间件统一鉴权,Validate 统一校验
  • 模板仍用原生 PHP —— 为了 1:1 复刻版式

技术栈

PHP 8.5纯 PHP 模板 + 框架分层
ThinkPHP 8路由、控制器、模型、中间件、验证器
SQLite / MySQL单机站点默认 SQLite,需要时切 MySQL
Nginx + PHP-FPM独立站点池,静态资源长缓存,HTML 不缓存
打开演示 ↗ 演示库与原站物理隔离;原站只读,未做任何写入。