mvc是生么?
mvc是软件设计的一种结构(即模型、视图、控制器)
本篇文章会通过一个简易的webapp来介绍mvc,目录结构如下:
mvcDemo
index.php
modules
UserModule.php
BlogModule.php
views
user
userPage.php
blog
blogPage.php
controllers
UserController.php
BlogController.ph
在以上的目录结构中:
index.php
【入口文件】是一个入口文件,是一个唯一让浏览器请求的脚步文件;
modules
【模型】用于提供数据并保存数据
views
【视图】用于提供界面的显示
controller
【控制器】用于协调模型和视图
action控制器中定义的方法:
【action】是控制其中定义的方法,浏览器直接请求,url中以参数的形式传递
以下在项目的创建过程中慢慢的来讲解mvc的工作模式,所有的过程都是在虚拟机环境下的centos6中完成的(该虚拟环境已经具备了lamp环境)
一、首先我们创建一个目录mvcDemo用于存放该项目:
二、接下来我们进入mvcDemo目录创建相应的文件和文件夹,如下:
以上视图我们创建了index.php入口文件;modules模型文件夹;views视图文件夹;controllers存放控制类的文件夹
三、进入controllers目录,创建一个UserController.php和BlogController.php,如下:
编辑UserController.php和BlogController.php;分别写入如下代码:
UserController.php:
BlogController.php:
四、返回上一级目录,编辑index.php,如下:
$m(); //执行该方法,返回相应的数据或视图
保存后,访问url【server/mvcDemo/?c=User&m=index】,在我的电脑上访问返回如下结果,注意【我的电脑IP地址为192.168.1.112;项目存放目录为mvcTest】
可以看我我们正常访问到了UserController类中的index方法。
在以上过程中我们已经通过了入口文件,访问到了我们模型中的方法,并返回了相应的数据,接下来我们要通过模型,返回相应的视图,展示给用户:
五、进入views目录,创建user和blog目录
六、进入user目录,创建一个index.php,并写下如下代码(一段简单的htm):
user
this is user view
七、接下来进入controllers目录,编辑我们创建好的UserController.php,加上如下代码,将我们的视图文件包含进来:
我们再次访问url【server/mvcDemo/?c=User&m=index】,显示如下:
可以看到我们刚才写的视图文件正常执行,并显示了
现在我们已经访问入口文件,通过模型,访问到了我们的视图
接下来我们要访问入口文件,通过模型,访问视图,并获取数据库中的数据(这里数据库中返回的数据,我们写假数据):
八、进入modules目录,创建一个文件UserModule.php,写入如下代码:
9、接下来我们编辑controllers目录下的UserController.php文件,让他调用UserModule.php';
echo $umo->getData();
}
}
再次访问url【server/mvcDemo/?c=User&m=index】,显示如下:
到此文章,一个简易的mvc实现就完成了。