请问在php mvc 中 在v层中应该怎样调取c中的方法呢?数据模型m和逻辑层都已经被项目经理建成,就是不清楚如何调用,
请问应该如何调用输出方法呢?请多指导,我是刚刚参加工作不久,对mvc 不了解,谢谢各位。

解决方案 »

  1.   

    这个问题 类似
    电视机(MVC)的显示屏(V)怎么调用换台(C)操作。
      

  2.   

    C层解析模板 进行替换V层的变量或者C层直接 include V层,不就可以直接调用C层的遍了么?
      

  3.   

    建议你还是先看看MVC的基础比较好~这样的做法是不合理的
      

  4.   

    哪能给介绍几本MVC的书吗?我去找找,谢谢。
      

  5.   

    有空去看看框架,比如thinkphp,zendframwork。..还有开源产品joomla ,dedecms.....
      

  6.   

    V一般是展示变量和数组,很少有把逻辑写在v里面,一般都在c或者m层就处理好了,然后在c层把数据赋值到视图v上。你这样做不合理。
      

  7.   

    在PHP CodeIgniter中,是在C里直接调用V的,跟你说的正好相反。Controller调用Model和View。
      

  8.   

    有些框架有固定的写法,好象Zend有这样的:
      <a href="<?php echo $this->url(array("action"=>"query","controller"=>"db"));?>" >try</a>
      

  9.   

    像smarty那样 c向v注册变量 v用变量名访问
      

  10.   

    对了,那phpcms 是怎么调用的呢。
      

  11.   

    这种做法是不建议的,我不知道你们是怎样实现这个分层的,我想楼主可以去先弄清MVC三层各层的职责,在V里面调用C里面的函数或者说方法,不是一个好的做法
      

  12.   

    http://wenku.baidu.com/view/a5aede00bed5b9f3f90f1cb1.html
    你可以参考一下这篇文章 自己做一个就会明白了
      

  13.   

    如果用的是MVC结构
    其实V层就相当与在C层中一样
    因为基本都是用include v层的
    v层可以直接调用调用它的c中的方法
      

  14.   

    我现在维护的网站是phpcms 的架构有点不太清楚,多谢个位指点。
      

  15.   

    这个一般是不允许的,如果强行做,可以把 c对象本身传给v,这样就行。$this->view->c = $this.其他可以使用注册器,只要在注册器里注册的,都可调用。一般, v层只显示变量。不调用其他. 公共函数也是一种方法!
      

  16.   

    你下载个 phpcms 使用手册看看不就结了
    CMS 本身就本身就不是个程序员用的
    按图索骥,很简单的
      

  17.   

    mvc中的M是Model,也就是程序功能和程序的构成方式比如数据库,V就是View图形界面,C就是Controller转发请求、处理请求。放在B/S模式里V就是浏览器呈现的东西,C就是服务器的php程序。回到楼主的“在v层中应该怎样调取c中的方法”的问题,那就简单了,那就是使用post、get或者ajax了。
      

  18.   

    上面的ajax其实也就是post、get其实也有其他方法,只要是浏览器给服务器发送参数,服务器根据发送的参数进行相应的动作就是了。
      

  19.   

    左边--->我的社区-->修改密码
      

  20.   

    magento java都是这么做的,可以看看java bean
      

  21.   

    不知道你用的是什么框架,我现在知道两种,像thinkphp,用法$this->assign('##',XXX),在v中取数据就用$##,
    Discuz里面的就是直接用变量名了。你可以试试。
      

  22.   

     
    c控制器中完成基本的业务逻辑调用
    v负责显示c的输出 
    v可以使用c的方法,也可以通过helper引入m的的调用方法
      

  23.   

    多看,多学……
    http://bbs.phpcms.cn/forum.php