请教PHP模版引擎的作用?
一直都想不通一个疑惑 模版引擎如smarty 是为了将前后台代码分离 但如果我单独写一个后台页面 然后用include把前台页面包含进来 也可以实现动静分离啊 是不是smarty除了多定义了一些函数外 就没有其他什么用了? 还有用MVC框架的话 视图、模型、控制器分得更详细 理论上来说可以完全不用模版了啊 为什么我见有些框架仍然要用模版? 我是初学者哈 问题傻了点 但请高手详细的解答一下疑惑 多多感谢!!!
------最佳解决方案--------------------
模板引擎主要是为了满足实际多人合作时的分工,尤其开发模板开发规范后,利用免费劳动力做模板
1.模板复杂/数量多/复用多
2.工作流程上易分工给专门做模板的,且此人不会php
3.希望模板里禁止使用php的一些功能,为安全或者为了不让人了解系统原理
于是就会这样:
一个前端只要照设计图套html和css,里面放数据地方镂空,嵌入示例数据或者调数据代码就可以完成他的工作。
有时也是为了模板不容易被其他系统复用或者说为了故意把前端弄复杂
有些时候是坑爹,是蛋疼,是为了照顾不会php的童鞋让他学smarty, 是为了玩正则,为了需要更多服务器和带宽。
------其他解决方案--------------------
差不多吧,不过还有就是smarty呀什么的还有个缓存
------其他解决方案--------------------
但是你想把include进来的前段页面传递一些数据怎么传,别如前段有个表,你想把php从数据库中获取的数据传给那个html页面怎么传?肯定是要有模板引擎进行解析的,而重点在于到底哪个引擎解析的效率快,功能丰富等等,当然也可以自己写模板引擎。
------其他解决方案--------------------
模板引擎的好处是你可以在php文件中,存储大量的变量,简单点说就是不管其他,尽管存变量就行了
在模板中可以选择需要输出的变量,简单点说,不管其他,只要输出变量就行了
------其他解决方案--------------------