# MyT **Repository Path**: yangjiaming/MyT ## Basic Information - **Project Name**: MyT - **Description**: 简单PHP框架 - **Primary Language**: PHP - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-02-09 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # MyT 简单的框架 数据库使用了ORM:Medoo 日志:monnlog #### 框架基本目录: project 应用部署目录 |─apps |    ├─fronend 项目目录可自定义或者同级目录可配置多个项目 |     |   ├─application |     |    |   ├─contollers |     |    |   ├─plug |     |    |   ├─views |     |    |   ├─Bootstrap.php |     |   ├─logs |     |   ├─public |     |    |   ├─index.php 入口文件 |─common |    ├─Adapter |    ├─Service |─config |    ├─config.php |─library |─vendor ### 开始 直接访问 比如 你的站点名称 www.MyT.com(站点目录设置到apps/fronend/public) 就直接访问 www.MyT.com 默认运行index控制器和index方法 控制器文件不需要后缀,类名需要,如下 ``` class IndexController extends BaseController { public function indexAction() { } } ``` 渲染模板和赋值 ``` public function indexAction() { $this->assign('data', 'Hello Word!'); $this->display('index'); } ``` service是写业务逻辑和获取数据的地方,请保持你的控制器的干净 简单的控制器请求 ``` 控制器 get(); } } ``` ``` service namespace Eagle\Service; use Eagle\Adapter\Front\UserAdapter; use Halo\Data\DAO; class Index extends Base { public function get() { $userDao = new DAO(new UserAdapter()); $data = $userDao->get();//获取一条数据 } } ``` 关于DAO ``` get 读取单行数据 get($params, $specified = array()) $params为搜索条件、数组型, $specified为需要搜索的字段 引用方法:$userDao->get($params); ``` ``` read 查询数据集 read($params, $specified, $pager = array(), $sorter = array()) $params为搜索条件、数组型, $specified指定字段 数组型 $pager 分页参数,数组 $sorter 排序参数,数组 ``` ``` update 数据更新 update($params) $params 必须包含主键 ``` ``` updateByQuery 批量更新 updateByQuery($toUpdate, $query) $toUpdate需要更新的 $query更新条件 ``` --- 关于Adapter文件 ps:数据库表请新增三个字段 create_time:新增时间, update_time更新时间(最好是int型) if_deleted删除状态(0正常,1是被删除) ``` namespace Eagle\Adapter\Front; use Eagle\Adapter\EagleBaseAdapter; class UserAdapter extends EagleBaseAdapter { //返回表名 public function table() { return 'user'; } //返回库名 public function database() { return 'shop'; } //redis相关 暂未启用 public function redis() { return null; } //返回PDO配置,适用于不同数据的配置,返回null即使用默认数据库 public function dbConfig() { } //软删除字段 public function softDeleted() { return 'if_deleted'; } //返回主键id public function primaryIdParamName() { return 'id'; } } ``` log文件可以简单查看数据库的请求 接收 get和post方法 直接在控制器中 ``` $params = $this->getParams(['username'], ['password']); ``` 第一个参数 表示是必须接收的参数,后面是可接收的参数 数据查询方法 ``` this->setParams($key, $type, $value, $params); $key -字段 键值 $type -类型 $value - 值 $params - 接收的数组 ``` type类型 eq -> 等于 lt -> 小于 le -> 小于等于 ge -> 大于等于 gt -> 大于 range -> 区间 值为数组 转为between