各位高手们,我是个php新手,最近在开发一个php的项目,我使用的是mvc的模式去实现的。把项目的类分成了控制器类(c),模型类(m)和视图类(v),每个模块都是这三个类中继承。
     我开始实现的时候,是在前台php页面中new了一个对应控制器的对象,然后通过这个对象调用相应的方法实现各种功能。但是,我的输出是封装在view里面输出的,不是直接在前台页面输出的。
    我在考虑是要在view那里放回一个数据库查询结果的数组,然后在前台页面循环输出,还是直接把结果在view里面直接输出,然后再返回到前台页面
    我是个新手,不知道这两种写法,那种比较好。希望高手们给点建议。。谢谢~!!

解决方案 »

  1.   

    一般是在模板里输出。但是还是要具体需求。有些就直接在view里面直接输出了。
      

  2.   

    用smarty,返回数组与参数,方便点。如果你不想继续源代码的形式,那么还是大数量的循环传数组,小规模小参数的直接输出
      

  3.   

    用smarty,返回数组与参数,方便点。如果你想继续自己的形式,那么还是大数量的循环传数组,小规模小参数的直接输出
      

  4.   

    在view那里放回一个数据库查询结果的数组,然后在前台页面循环输出
    直接把结果在view里面直接输出,然后再返回到前台页面都一样,前者使用 js,后者使用 php
    一般的,前者称为“富客户端”,后者称为“廋客户端”
      

  5.   

    谢谢各位的回复。
        当初用view直接输出,就是为了个方便,直接把所有的代码在view里面用echo输出,就了事了。但是,后来发现view里面的echo输出里面有太多的html标签了,就像以前jsp使用servlet那样,好像把view当成一个模板了。我在考虑的是,把静态的那些html标签直接在前台页面写好,然后通过view返回一个数组,进行循环输出。
        可是,我发现如果返回到前台页面的话,在输出值得时候,就会出现很多个<?php echo 变量值;?>这样的标签。我不知道,如果在页面出现了很多<?php ?>标签会不会影响页面的执行效率。如果直接在view里面echo输出的话,就会少很多这样的标签。我不知道这两次方法,那种效率高点。。
        
      

  6.   

    谢谢各位的回复。
      当初用view直接输出,就是为了个方便,直接把所有的代码在view里面用echo输出,就了事了。但是,后来发现view里面的echo输出里面有太多的html标签了,就像以前jsp使用servlet那样,好像把view当成一个模板了。我在考虑的是,把静态的那些html标签直接在前台页面写好,然后通过view返回一个数组,进行循环输出。
      可是,我发现如果返回到前台页面的话,在输出值得时候,就会出现很多个<?php echo 变量值;?>这样的标签。我不知道,如果在页面出现了很多<?php ?>标签会不会影响页面的执行效率。如果直接在view里面echo输出的话,就会少很多这样的标签。我不知道这两次方法,那种效率高点。。
      

  7.   

    显然第一种效率高。起码html标签就不用PHP输出了。而且以后要是换皮肤的把模板一换就行了。 
      

  8.   

    恩恩,之前没有考虑用模板技术,所以就打算自己编写一个小的mvc框架了。。
      

  9.   

    你这么一说,也对。。我就是在网上看到很多人说,返回一个数组是最影响速率的。。所以,也在担心这方面。。但是现在觉得,如果都在view里面输出的话,以后要修改也是很麻烦的
      

  10.   

    模板技术与MVC并不冲突
    模板技术 是属于 View 的
      

  11.   

    这样啊。。我是个新手,还不是很明白模板技术之前就用过thinkphp
    对了,请问一下,如果我返回到页面输出的话,可以用<?=变量值?>的形式输出值吗?
    我在网上查了一下,说使用短标签不好,但是,我发现每次都使用<?php echo 变量值;?>的方式太麻烦了。。
    由于还没有学习smarty,所以只能暂时用最笨办法去实现了
    谢谢!!