zoukankan      html  css  js  c++  java
  • php下 MVC实现的基本思路

    为了能使新手更好的理解我这个思路的工作原理,我们现在模拟一个用户登录的场景,看看MVC是如何工作的。

    现在假设,所有的数据都提交给index.php,

    第一步:

    我们提交各get变量,告诉index.php该用哪个C,例如可以这样index.php?controller=user

    然后index接收到get变量,什么也不需要做,直接找到/user/controller.php,把所有数据丢给他,本来GET和POST就是全局的,所以index.php也不需要做什么,直接调用C的main函数就可以了,到此index.php的任务完成。

    第二步:

    C的main函数开始执行,检查变量,发现用户要执行的登录操作(很简单,你post个变量do=login就可以了),于是调用 getModel,载入对应的M类(例如/user/models/model.php),并实例化, 调用实例的load方法,载入该用户的数据资料,判断是否与用户提交的密码一致,如果提交的数据不正确header跳转到出错页面,如果正确,调用 display()方法,载入对应的V(例如/user/views/details.php),并实例化,调用其main()函数,进入第三步。到此C 的任务已完成,第二不操作均在main函数中进行。

    第三步:

    你可以选择调用getModel()载入M,重写调取数据,也可以在C实例化V的时候,把参数传过来(例如SESSION),当V已经确定得到数据以后,display(),载入模板,MVC执行完毕。

    当然,由于字数与精力限制,这里写的只是非常简要的概括,实际实施的时候要考虑很多细节,但我设计MVC的时候,大概思路就是这样,也用到了实际中,感觉良好。
  • 相关阅读:
    30个php操作redis经常用法代码样例
    Android语音播报、后台播报、语音识别
    Gym 100733J Summer Wars 题解:灵活运用扫描线的思想
    如何运营一个软件微社区
    关于迭代测试的一些思考
    DirectUI界面编程(五)WindowImplBase的使用
    Zxing实现在线二维码生成程序
    Java二维码生成与解码工具Zxing使用
    DirectUI界面编程(四)界面布局详解
    软件开发中的资源管理
  • 原文地址:https://www.cnblogs.com/neve/p/1964422.html
Copyright © 2011-2022 走看看