解决什么问题:从写流水账到懂工程化的跨越
很多转岗或自学PHP的人,早期往往停留在写面向过程脚本的阶段:能写出增删改查,但代码全堆在一起,HTML和PHP逻辑互相穿插。一旦业务变复杂,改一个功能就牵连全身,根本没法维护。这门课就是来填这个坑的。它聚焦于PHP工程化必须跨过的三道坎:模板引擎、设计模式、MVC架构。如果你已经能熟练写面向过程代码,了解基础的面向对象语法,但面对"如何分离视图与逻辑"、"如何避免大量重复造轮子"、"如何把代码组织成可扩展的框架结构"这些概念时心里没底,那这季课程正是你需要补上的短板。它不教基础语法,默认你已经跨过了入门门槛。
建议先看哪几块:按依赖顺序推进
不要拿到资料就直奔最后的商城项目,那样容易卡壳。建议按底层机制到上层应用的顺序推进。第一块先啃模板引擎,重点理解变量分配、自定义函数和缓存机制,搞清楚模板编译到底干了什么,而不是死记调用语法。第二块是错误与异常处理,这部分篇幅不长但极关键,必须弄懂如何用异常拦截运行时错误,因为后面的框架底层和商城业务全靠这套机制兜底。第三块是设计模式与MVC,这是核心难点,建议结合单例、工厂等具体模式去推演控制器、模型、视图三者怎么协作。最后再进入在线商城项目,这时候你是在做整合演练,而不是在看天书。配套资料里的代码片段必须边看边敲,遇到自定义函数和变量调节器,自己改参数跑一遍看输出差异,别只盯着视频看个热闹。
学完能独立做什么:脱离脚手架搭项目
把这套东西吃透,你的能力边界会有实质性的变化。首先,你能脱离那种HTML和PHP混写的原始方式,用模板引擎把视图层彻底剥离,并且知道怎么用缓存机制降低数据库查询压力。其次,遇到别人写的MVC框架代码,你不再一头雾水,能看懂路由分发和分层调用的逻辑。最关键的是,学完最后的在线商城实战,你应该能独立从零搭建一个具备基础架构的项目骨架:自己定控制器基类、自己连数据层、自己套模板。不再依赖现成的脚手架去跑业务。配套练习时,重点把商城里的用户登录、购物车、订单流转这几个核心链路自己脱稿写一遍。如果写的过程中能下意识用上设计模式去解耦代码,遇到报错能靠异常处理模块定位问题,那这门课的缺口就算补上了。
课程目录
1-1 [Smarty模板引擎] 引擎介绍 (15:04) 1-2 [Smarty模板引擎] 使用Smarty (25:17) 1-3 [Smarty模板引擎] 分配变量 (30:21) 1-4 [Smarty模板引擎] 自定义函数[上] (23:17) 1-5 [Smarty模板引擎] 自定义函数[中] (19:37) 1-6 [Smarty模板引擎] 自定义函数[下] (23:09) 1-7 [Smarty模板引擎] 变量调节器 (31:31) 1-8 [Smarty模板引擎] 内置函数[上] (25:32) 1-9 [Smarty模板引擎] 内置函数[下] (31:59) 1-10 [Smarty模板引擎] 缓存机制 (28:53) 2-1 [错误与异常处理] 错误与异常处理[上] (23:00) 2-2 [错误与异常处理] 错误与异常处理[下] (23:17) 3-1 [使用PDO抽象层] 介绍与开启(1) (14:35) 3-2 [使用PDO抽象层] PDO链接数据库(2) (16:34) 3-3 [使用PDO抽象层] 数据库操作(3) (23:41) 3-4 [使用PDO抽象层] 准备语句及事务[上](4) (20:56) 3-5 [使用PDO抽象层] 准备语句及事务[下](5) (17:24) 4-1 [对象与设计] 面向对象及面向过程[上] (17:20) 4-2 [对象与设计] 职责、内聚、耦合[下] (29:15) 5-1 [UML基础] 用例图、类图、时序图 (21:47) 5-2 [UML基础] 泛化、实现、聚合、组合、依赖 (25:07) 6-1 [设计模式基础] 概念、核心 (16:08) 6-2 [设计模式基础] 策略模式[上] (19:03) 6-3 [设计模式基础] 策略模式[中] (35:13) 6-4 [设计模式基础] 策略模式[下] (37:59) 7-1 [生成对象] 实例化的思考 (18:31) 7-2 [生成对象] 单例模式[上] (20:00) 7-3 [生成对象] 单例模式[下] (21:01) 7-4 [生成对象] 简单工厂模式 (21:01) 7-5 [生成对象] 工厂方法模式 (12:53) 7-6 [生成对象] 抽象工厂模式 (29:52) 7-7 [生成对象] 原型模式 (26:07) 8-1 [敏捷的开发] 组合模式[上] (16:07) 8-2 [敏捷的开发] 组合模式[中] (21:22) 8-3 [敏捷的开发] 组合模式[中下] (13:12) 8-4 [敏捷的开发] 组合模式[下] (24:53) 8-5 [敏捷的开发] 装饰模式[上] (21:00) 8-6 [敏捷的开发] 装饰模式[下] (30:23) 8-7 [敏捷的开发] 外观模式 (12:13) 9-1 [执行及描述任务] 解释器模式 (22:42) 9-2 [执行及描述任务] 策略模式回顾 (12:21) 9-3 [执行及描述任务] 观察者模式[上] (18:21) 9-4 [执行及描述任务] 观察者模式[下] (23:36) 9-5 [执行及描述任务] 访问者模式 (21:37) 9-6 [执行及描述任务] 命令模式 (32:18) 10-1 [其他模式] 适配器模式 (22:59) 10-2 [其他模式] 建造者模式 (18:47) 10-3 [其他模式] 数据访问对象模式 (21:21) 10-4 [其他模式] 委托模式 (17:44) 10-5 [其他模式] 空对象和迭代器模式 (16:55) 10-6 [其他模式] 中介者模式 (29:04) 10-7 [其他模式] 代理模式及模版模式 (14:59) 11-1 [在线商城系统] 0.0-ShopEx介绍、安装与使用 (16:41) 11-2 [在线商城系统] 0.1-系统架构与MVC浅谈 (14:43) 11-3 [在线商城系统] 0.2-使用适配器单例架构Smarty (14:47) 11-4 [在线商城系统] 0.3-创建Action基类并实现单入口 (27:29) 11-5 [在线商城系统] 0.4-单例DB让Model继承 (15:50) 11-6 [在线商城系统] 0.5-创建后台首页框架[上] (22:14) 11-7 [在线商城系统] 0.5-创建后台首页框架[下] (15:09) 11-8 [在线商城系统] 0.6-后台首页框架导航功能 (14:09) 11-9 [在线商城系统] 0.7-配置参数及设置模版目录 (19:32) 11-10 [在线商城系统] 0.8-创建管理员表及页面 (21:44) 11-11 [在线商城系统] 0.9-新增管理员 (26:10) 11-12 [在线商城系统] 1.0-请求类工具类及拼装SQL[上] (24:49) 11-13 [在线商城系统] 1.0-请求类工具类及拼装SQL[下] (13:51) 11-14 [在线商城系统] 1.1-表单提交字符转义 (17:55) 11-15 [在线商城系统] 1.2-创建服务器端表单验证模块层 (23:01) 11-16 [在线商城系统] 1.3-验证数据及错误页功能 (22:03) 11-17 [在线商城系统] 1.4-验证数据库信息 (24:00) 11-18 [在线商城系统] 1.5-使用客户端验证所有数据 (23:25) 11-19 [在线商城系统] 1.6-实现跳转类重定向 (27:17) 11-20 [在线商城系统] 1.7-显示所有数据 (21:38) 11-21 [在线商城系统] 1.8-实现数据分页 (27:48) 11-22 [在线商城系统] 1.9-删除一条数据 (28:17) 11-23 [在线商城系统] 2.0-获取一条数据 (25:57) 11-24 [在线商城系统] 2.1-修改一条数据 (24:31) 11-25 [在线商城系统] 2.2-第一模块架构流程图 (19:39) 11-26 [在线商城系统] 2.2-在管理员模块载入等级模块 (27:37) 11-27 [在线商城系统] 2.3-拼装双表查询 (23:31) 11-28 [在线商城系统] 2.4-创建第二模块导航条[上] (26:23) 11-29 [在线商城系统] 2.4-创建第二模块导航条[中] (27:13) 11-30 [在线商城系统] 2.4-创建第二模块导[中下] (13:54) 11-31 [在线商城系统] 2.4-创建第二模块导航条[下] (21:12) 11-32 [在线商城系统] 2.5-登录模块[上] (23:22) 11-33 [在线商城系统] 2.5-登录模块[中] (18:11) 11-34 [在线商城系统] 2.5-登录模块[中下] (17:02) 11-35 [在线商城系统] 2.5-登录模块[下] (25:03) 11-36 [在线商城系统] 2.6-进一步构建SQL提升[上] (23:56) 11-37 [在线商城系统] 2.6-进一步构建SQL提升[中] (28:36) 11-38 [在线商城系统] 2.6-进一步构建SQL提[中下] (23:54) 11-39 [在线商城系统] 2.6-进一步构建SQL提升[下] (19:48) 11-40 [在线商城系统] 2.7-进一步优化职责提高 (31:25) 11-41 [在线商城系统] 2.8-前台显示导航 (19:16) 11-42 [在线商城系统] 2.9-导航位置及分类[上] (21:10) 11-43 [在线商城系统] 2.9-导航位置及分类[中] (27:24) 11-44 [在线商城系统] 2.9-导航位置及分类[下] (17:10) 11-45 [在线商城系统] 3.0-制作列表页和详情页[上] (31:29) 11-46 [在线商城系统] 3.0-制作列表页和详情页[下] (27:27) 11-47 [在线商城系统] 3.1-展示全部分类 (21:19) 11-48 [在线商城系统] 3.2-品牌模块[上] (25:52) 11-49 [在线商城系统] 3.2-品牌模块[下] (09:36) 11-50 [在线商城系统] 3.3-商品类型关联品牌[上] (23:11) 11-51 [在线商城系统] 3.3-商品类型关联品牌[下] (38:22) 11-52 [在线商城系统] 3.4-引入ck编辑器及上传 (29:03) 11-53 [在线商城系统] 3.5-商品模块[上] (24:01) 11-54 [在线商城系统] 3.5-商品模块[中] (25:52) 11-55 [在线商城系统] 3.5-商品模块[中下] (20:17) 11-56 [在线商城系统] 3.5-商品模块[下] (23:06) 11-57 [在线商城系统] 3.5-商品模块[下下] (16:07) 11-58 [在线商城系统] 3.6-展示商品列表[上] (21:47) 11-59 [在线商城系统] 3.6-展示商品列表[下] (26:59) 11-60 [在线商城系统] 3.7-展示商品详情 (31:21) 11-61 [在线商城系统] 3.8-自定义属性[上] (25:21) 11-62 [在线商城系统] 3.8-自定义属性[中上] (26:38) 11-63 [在线商城系统] 3.8-自定义属性[中] (27:24) 11-64 [在线商城系统] 3.8-自定义属性[中下] (22:08) 11-65 [在线商城系统] 3.8-自定义属性[下] (17:03) 11-66 [在线商城系统] 3.9-商品详情加载属性 (24:53) 11-67 [在线商城系统] 4.0-价格区间[上] (23:36) 11-68 [在线商城系统] 4.0-价格区间[中] (21:35) 11-69 [在线商城系统] 4.0-价格区间[下] (22:35) 11-70 [在线商城系统] 4.1-品牌及属性筛选[上] (38:38) 11-71 [在线商城系统] 4.1-品牌及属性筛选[下] (23:19) 11-72 [在线商城系统] 4.2-会员模块[上] (27:55) 11-73 [在线商城系统] 4.2-会员模块[下] (17:52) 11-74 [在线商城系统] 4.3-购物车[上] (18:48) 11-75 [在线商城系统] 4.3-购物车[中] (24:40) 11-76 [在线商城系统] 4.3-购物车[下] (29:33) 11-77 [在线商城系统] 4.4-结算[上] (24:17) 11-78 [在线商城系统] 4.4-结算[下] (19:48) 11-79 [在线商城系统] 4.5-提交订单 (23:16) 11-80 [在线商城系统] 4.6-个人中心-收货人[上] (30:46) 11-81 [在线商城系统] 4.6-个人中心-收货人[下] (18:30) 11-82 [在线商城系统] 4.7-个人中心-订单列表[上] (36:25) 11-83 [在线商城系统] 4.7-个人中心-订单列表[下] (27:26) 11-84 [在线商城系统] 4.8-支付宝在线支付[上] (26:52) 11-85 [在线商城系统] 4.8-支付宝在线支付[下] (28:59) 11-86 [在线商城系统] 4.9-解决四个已知的BUG (19:25) 11-87 [在线商城系统] 5.0-下单跳转及分享至 (33:31) 11-88 [在线商城系统] 5.1-填充商品详情 (18:51) 11-89 [在线商城系统] 5.2-售后服务[上] (31:57) 11-90 [在线商城系统] 5.2-售后服务[中] (16:55) 11-91 [在线商城系统] 5.2-售后服务[下] (21:32) 11-92 [在线商城系统] 5.3-下架和超量处理 (22:13) 11-93 [在线商城系统] 5.4-商品数量消减和回滚[上] (23:18) 11-94 [在线商城系统] 5.4-商品数量消减和回滚[下] (25:47) 11-95 [在线商城系统] 5.5-用户端订单处理 (21:05) 11-96 [在线商城系统] 5.6-物流配送[上] (22:04) 11-97 [在线商城系统] 5.6-物流配送[下] (22:58) 11-98 [在线商城系统] 5.7-申请退款 (22:54) 11-99 [在线商城系统] 5.8-解决几个订单BUG (21:49) 11-100 [在线商城系统] 5.9-计算运费[上] (16:34) 11-101 [在线商城系统] 5.9-计算运费[下] (23:33) 11-102 [在线商城系统] 6.0-支付跳转 (15:41) 11-103 [在线商城系统] 6.1-商品评价[上] (35:54) 11-104 [在线商城系统] 6.1-商品评价[中] (20:52) 11-105 [在线商城系统] 6.1-商品评价[下] (18:48) 11-106 [在线商城系统] 6.2-回复处理评价[上] (33:35) 11-107 [在线商城系统] 6.2-回复处理评价[下] (28:25) 11-108 [在线商城系统] 6.3-成交记录 (33:45) 11-109 [在线商城系统] 6.4-类别商品数量 (19:34) 11-110 [在线商城系统] 6.5-浏览记录 (24:31) 11-111 [在线商城系统] 6.6-列表评论和销量排行 (30:44) 11-112 [在线商城系统] 6.7-商品对比[上] (25:36) 11-113 [在线商城系统] 6.7-商品对比[下] (20:52) 11-114 [在线商城系统] 6.8-收藏商品 (26:30) 11-115 [在线商城系统] 6.9-前台首页填充[上] (21:33) 11-116 [在线商城系统] 7.0-后台首页填充[下] (24:56) 11-117 [在线商城系统] 7.1-模版编辑器[上] (24:18) 11-118 [在线商城系统] 7.1-模版编辑器[下] (28:44) 11-119 [在线商城系统] 7.2-图片管理器 (27:02) 11-120 [在线商城系统] 7.3-伪静态 (26:14)





