• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

如何写出来的东西才叫mvc哦。小弟我艹艹艹艹熬

php 搞代码 4年前 (2022-01-23) 17次浏览 已收录 0个评论

怎么写出来的东西才叫mvc哦。我艹艹艹艹熬
本来就不会,还偏让这样写。真TM讨厌。

我分为几个目录,比如model目录,核心目录(数据库类等)。

然后我写一个控制器,用最简单的switch判断请求要查询的model,然后再加个smarty当V。
大致代码好像是

PHP code

<!---ecms Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->switch($action){     case "add1":        $smarty=new Smarty();    <i style="color:transparent">本¥文来源gaodai$ma#com搞$代*码*网(</i><strong>搞代gaodaima码</strong>    $smarty->display("tianjiabumen.tpl");         break;     case "del":          $id=$_GET['id'];         $bm=new bumenmodel();         $bm->id=$id;         $bm->delete();         header("location:bumenkongzhiqi.php?action=chaxun");            break;

包含文件更讨厌了,真恶心!

这样写出来,勉强算不算MVC- -。

——解决方案——————–
就是有个类叫做controller,大概是这个样子的
class controller {
function getModel($name) {}
function getView($name) {}
.
.
}
然后每个c继承这个controller,从而使用一些c都会用到的函数
类似的,一般model基类会有数据库连接方法,输入过滤方法,也会有获取其他model的方法
然后如果是有模版的mvc架构,例如joomla,view和模版是区分的,这个时候的view基类会有装载模版、装载对应model方法等等。

getModel($modelName)
这个函数一般大概是这么写的

PHP code

class factory(){function __contruct(){$this->models = array();}function & getModel($modelName) {if(!isset($this->models[$modelName])){require("{MODEL_BASEPATH}/{$modelName}");$this->models[$modelName] = new $modelName();}return $this->model[$modelName];}} 


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:如何写出来的东西才叫mvc哦。小弟我艹艹艹艹熬
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址