CI中视图即application/views/下的模版文件,模版中支持直接使用PHP,所以模版的实现没有太多好说的,说几点视图的注意事项:
1、CI的视图可以在控制器中load多个视图,页面最后将这些内容组合起来后输出。这里load的动作如果交给控制器去做,需要调整模版结构时就需要调整控制器,这不太好。可以在控制器中进行封装或者直接交给视图去做,保证每个ACTION都只load一个视图文件。
2、让视图做它擅长的事情,不要在PHP代码中直接定义HTML,这样子会让程序和视图都难以维护,如果要加载HTML,可通过load的方式返回。
3、虽然有万能的get_instance方法,但在视图中也不要直接去读取数据或者做一些其他模块的事情。视图的作用就是接收数据并展现出来,以确保人尽其责,物尽其用。
4、关于是否要使用模版的问题,个人趋向于使用模版。直接使用PHP时,需要自己去处理变量的定义问题、转换为HTML实体的问题,而这些问题模版都可以解决,以及会提供一些更方便的操作。如果要说效率问题,不在这里,也大多不在PHP。