PHP模板引擎的由来php
● 为了解决当时混合开发WEB应用出现的一系列问题:代码难维护,代码不可重用,程序员要求知识广等问题前端
● 实现后端与前端不彻底分离,开发与美工能够分工合做,提升效率vue
PHP模板引擎带来的问题程序员
● 因为是不彻底分离,致使分工中还有部分耦合地方正则表达式
● PHP模板引擎 致使了 模板引擎语言 的诞生,增长学习成本,还致使是前端和后端谁学习的争论后端
当今PHP模板引擎还有价值吗?框架
● 当前彻底先后端分离的解决方案已经出现,前端三大框架(vuejs/React..等)都已经实现前端模板引擎了,因此基本PHP模板已经给取代了,减轻服务端压力前后端分离
● 但若是要维护老项目,还须要用到PHP模板引擎,若是想简单快捷开发PC项目,使用PHP模板引擎是比较好的选择学习
PHP模板引擎实现原理ui
● 读取模板文件的内容
1 |
|
● 使用正则表达式把模板语言替换为PHP语言
1 |
|
● 保存成新的.php文件
1 |
|
● 最后把新生成的.php文件包含进来
1 |
|
include与require注意事项
● include与require的功能是把后面的字符串做为文件名,不论文件扩展名是否是.php,都认为那个文件是php程序,引入到当前程序中运行。
● php程序若是没有被<?php和?>包起来,就会直接输出。
● 当一个文件被包含时,语法解析器在目标文件的开头脱离 PHP 模式并进入 HTML 模式,到文件结尾处恢复。因为此缘由,目标文件中须要做为 PHP 代码执行的任何代码都必须被包括在有效的 PHP 起始和结束标记之中。