摘要:<?php // 1 创建框架模型基类 // 做项目,一定要从模型开始做。 // 1.1 ma/core/Model.php // 1.2 连接数据库[构造方法实现] // 1.3 设置一些受保护属性或方法,供子类继承[可选] /**** * 框架的模型基类 *
<?php // 1 创建框架模型基类 // 做项目,一定要从模型开始做。 // 1.1 ma/core/Model.php // 1.2 连接数据库[构造方法实现] // 1.3 设置一些受保护属性或方法,供子类继承[可选] /**** * 框架的模型基类 * 1.采用Medoo作为数据库管理的框架 * 2.Medoo是一个轻量级的基于PDO预处理,与类型无关的数据库框架 ****/ namespace ma\core; use Medoo\Medoo; class Model extends Medoo { public function __construct($options = null) { $config = require 'ma/config.php'; $options = $config['db']; // 实例化数据库框架Medoo parent::__construct($options); } } // 2 创建框架视图基类 // ma/core/View.php // 目的:将第三方的模板引擎导入到我们的项目中 // 2.1 主要是初始化模板引擎:Plates // 2.2 配置一些默认模板目录 /**** * 框架的模型基类 * 1.采用Medoo作为数据库管理的框架 * 2.Medoo是一个轻量级的基于PDO预处理,与类型无关的数据库框架 ****/ namespace ma\core; use Medoo\Medoo; class Model extends Medoo { public function __construct($options = null) { $config = require 'ma/config.php'; $options = $config['db']; // 实例化数据库框架Medoo parent::__construct($options); } } // 3 创建框架控制器基类 // 功能:主要功能,实例化模板引擎对象,创建通用方法,供子类调用 // 3.1 最重要的是对视图对象的创建 // 3.2 如果有其他公共操作,也可以放这里 // ma/core/Controller.php /**** 框架的视图基类 基于原生PHP的模板引擎:Plates ****/ namespace ma\core; use League\Plates\Engine; class View extends Engine { // 变量容器 protected $data = [ ]; /** * View constructor * @param null $directory 默认模板目录 * @param string $fileExtension 模板扩展名 * **/ // 构造方法 public function __construct($directory = null, $fileExtension = 'php') { parent:: __construct($directory, $fileExtension); } } // 4 创建应用项目(总结) // 4.1 约定都创建在app目录下面 // 4.2 app下一模块进行划分,例如admin为后台管理模块,home为前提管理模块 // 4.3 模块admin下创建目录controller,用来存放用户自定义的控制器类文件 // 4.4 模块的视图也放在admin目录下,创建admin/view目录 // 4.5 view目录下,根据不同的控制器再创建目录进行分类管理:index/edit.php // 4.6 根据模板的要求,全部模板文件默认后缀都是php,也可以修改为其他,如:tpl/html // 4.7 模型对应数据库操作,通常一个应用对应着一个数据库,表基本都是共用的 // 4.8 所以不针对模块来创建模型,而是在app应用下创建model,为公共模型 // 提示:鉴于配置文件、路由解析类、框架基础类都已经在之前的作业中体现,此处,不再赘述。 ?>
// 框架开发流程:
// 1.进行框架的基本配置:app/ma/config.php
// 主要有应用配置与数据库配置二部分组成;
// 以PHP数组方式返回
// 配置文件主要是提供给 路由类 和 基础类 使用;
// 配置文件:适用于整个应用
// 采用数组方式返回数据
// 2.安装第三方依赖工具
// 依赖管理工具:composer
// 安装数据库操作框架
// 安装模板引擎
// 3.创建路由解析类
// 目的:实现路由解析,请求分发;
// 4.创建基础类与控制文件
// 基础类是框架运行的保障,主要用调试设置,类的自动加载和启动功能,几乎所有PHP框架都有一个基础类,
// 可能有的框架叫做引导类,实质都是一样的
// 4.1 调试模式
// 开发模式,开启,抛出错误;上线后,关闭调试模式
// 4.2 自动加载
// 将自定义的类加载函数把它注册到系统中去,这样,我们在New一个类的时候,这个类就自动加载到当前脚本中。
// 4.3 启动框架
// 一般是设置一个run或者start方法,所谓启动,实际上就是一个请求路由分发的过程。
// 5 创建框架模型基类
// 做项目,一定要从模型开始做。
// 5.1 连接数据库[构造方法实现]
// 5.2 设置一些受保护属性或方法,供子类继承[可选]
// 6 创建框架视图基类
// 目的:将第三方的模板引擎导入到我们的项目中
// 6.1 主要是初始化模板引擎
// 6.2 配置一些默认模板目录
// 7 创建框架控制器基类
// 功能:主要功能,实例化模板引擎对象,创建通用方法,供子类调用
// 7.1 最重要的是对视图对象的创建
// 7.2 如果有其他公共操作,也可以放这里
批改老师:韦小宝批改时间:2018-11-19 15:29:59
老师总结:写的很完整!不错不错!不要骄傲!以后的作业就是要这样写下去!很棒!!!继续加油吧!