如果我想在PHP中为CMS实现更复杂的宏语言,那么可能的方法是什么?目前我有一个使用preg_replace的宏解析器,您可以在cms页面中调用宏,例如:{#GetPageName#}或{#GetUserName | UserID = 9#},你明白了。
目标是以一种可以分配变量的方式使用它,并使用if语句,例如: {#if GetPageName =='Home'{'我是主页'}#}或{#var Name = GetCurrentUserName#}
这样的事情会成为可能吗?
感谢您的任何见解。
答案 0 :(得分:0)
绝对可以编写自己的宏语言或模板引擎。问题是你想在这个项目上投入多少时间,以及你对这个项目的雄心壮志。
在大多数情况下,使用已经存在的东西而不是重新发明轮子会更有效率。通过这种方式,您可以使用和学习一种先进的技术,一旦您掌握了它的工作原理,您就可以编写自己的版本或修改到目前为止使用的技术,也许您最终会对一个帮助整个社区的开源项目。
以Smarty为例,但不要止步于此。做一些研究,看看有什么可用,以及它适合您的用例。