php # 电子商城项目#
完成电子商务 项目的 前后端 商品模块的开发
其中要 重点掌握的 知识点 : OOP思想 ,MVC模式,数据库设计,复杂查询,无线分类,项目安全,iframe高级用法。
OOP(Object Oriented Programming,面向对象编程
具有三大特征
1,封装: 隐藏内部实现的细节,给外部一个接口;
2,继承: 子类可以继承父类属性和方法(private);
3:多态:多种形态;组件的引用和类集会涉及到其它许多不同类型的组件,而且引用组件所产生的结果得依据实际调用的类型。
OOP 的好处: 可维护,重用性,灵活性和扩展性
MVC模式: 核心思想 : 将业务逻辑和 显示相分离
3.定义核心启动类---让项目run起来
思考,在启动类中,应该实现那些功能呢?
以 index.php?p=admin&c=goods&a=add 请求为例
a, 初始化工作,如路径定义等
b, 路由功能
c, 自动加载功能
DIRECTORY_SEPARATORY, 目录分隔符,是在一个预定义常量。在linux下解析为 / ,在windows下解析为 \。
小问题:前后台的控制器和视图目录怎么定义呢?
需要解析url携带的参数,p=admin&c=goods&a=add
如何获取p、c和a呢?
请求方式在项目中的表现形式有:
1, Get,
2, Post,表单
此时我们应该使用$_REQUEST
提到自动加载,一定会想到__autoload,魔术函数
它是一个普通的函数,不是类的方法。如果直接在类中定义一个__autoload的方法,它并不会实现自动加载。
那应该如何我们的自动加载呢?
1 直接在index.php中,编写__autoload,
2 在类中定义一个方法,让后将其注册为自动加载方法。(推荐)--- spl_autoload_regisiter
注意spl_autoload_register函数的用法,
如果是普通函数,只需要填写函数名即可
如果是类中的方法,需要告知是哪个类的哪个方法,使用数组的形式传递
__CLASS__表示当前类
在我的自动加载方法中,只负责加载 application下面的 控制器类和模型类。
主方法,run