什么是框架
遵循通用代码规范,采用指定设计模式编写的代码文件集合,这些代码文件是程序结构代码,可是框架中实现业务功能。
常见的PHP框架
Laravel:采用MVC架构模式,支持Composer,提倡代码的重用,保证代码的简洁性与优雅性,适合应用各种开发模式
Yii:实现了MVC设计模式并基于该模式组织代码。代码简洁优雅,将代码的重用性发挥到了极致。秀才适用于大型Web应用
MVC设计模式
什么是MVC
MVC的全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,是一种软件设计典范。它是用一种业务逻辑、数据与界面显示分离的方法来组织代码,将众多的业务逻辑聚集到一个部件里面,在需要改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑,达到减少编码的时间。
M是用于处理数据的部分
V是指显示在浏览器中的网页
C则是用来处理用户交互的程序
MVC应用场景
用户提交表单,控制器负责读取用户提交的数据进行处理,向模型发送数据,再通过视图将处理结果显示给用户
体验MVC设计模式
创建实现思路:
●创建www.myframe.test的虚拟机
●创建控制器,用来调用模型和视图
●创建模型,读取数据表中的数据
●创建视图,将读取的数据在视图中展示
先在hosts文件里添加
然后在httpd-vhosts.conf
在指定目录下创建文件
将www.myframe.test用vscode打开,新建
重启apache服务,在浏览器中打开myframe.test
然后在app下创建文件
修改index.php的内容
然后在app下创建StudentModel.php
然后打开终端,开始创建数据库
create database `myframe`;
创建表
use myframe;
create table `student` ( `id` INT UNSIGNED PRIMARY KEY AUTO_INCREMENT COMMENT '学生id', `name` VARCHAR(10) NOT NULL DEFAULT '' COMMENT '姓名' , `gender` VARCHAR(2) NOT NULL DEFAULT '' COMMENT '性别' , `email` VARCHAR(128) NOT NULL DEFAULT '' COMMENT '邮箱' , `mobile` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '手机号' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
填数据
INSERT INTO `student` VALUES (1, 'Allen' , '男' , 'allen@myframe. test' , '12300004567') ,(2, 'James' , '男' , 'james@myframe. test' , '12311114567' ) , (3, 'Rose' , '女' , 'rose@myframe. test' , '12322224567'),(4, 'Mary','女','mary@myframe. test','12333334567') ;
然后我们要写模型
模型创建好之后我们要在控制器里面调用它
访问myframe.test
是可以访问到的
在views里创建视图文件
然后在控制器中引入视图文件
访问
简单的MVC式体验。