今天给各位分享phpcms模板引擎语法的知识,其中也会对phpcms是什么框架进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
1、PHP 模板引擎的简单代码怎么弄!
//phpcms 的核心模板解析函数
/*
*/
function template_parse($str)
{
$str = preg_replace("/\{(\\$[a-zA-Z0-9_\[\]\'\"\$\x7f-\xff]+)\}/es", "addquote('?php echo \\1;?')",$str);
$str = preg_replace("/\{([A-Z_\x7f-\xff][A-Z0-9_\x7f-\xff]*)\}/s", "?php echo \\1;?",$str);
$str = preg_replace("/([\n\r]+)\t+/s","\\1",$str);
$str = preg_replace("/\\!\-\-\{(.+?)\}\-\-\/s", "{\\1}",$str);
$str = preg_replace("/\{template\s+(.+)\}/","\n?php include template(\\1); ?\n",$str);
$str = preg_replace("/\{include\s+(.+)\}/","\n?php include \\1; ?\n",$str);
$str = preg_replace("/\{php\s+(.+)\}/","\n?php \\1?\n",$str);
$str = preg_replace("/\{if\s+(.+?)\}/","?php if(\\1) { ?",$str);
$str = preg_replace("/\{else\}/","?php } else { ?",$str);
$str = preg_replace("/\{elseif\s+(.+?)\}/","?php } elseif (\\1) { ?",$str);
$str = preg_replace("/\{\/if\}/","?php } ?",$str);
$str = preg_replace("/\{loop\s+(\S+)\s+(\S+)\}/","?php if(is_array(\\1)) foreach(\\1 AS \\2) { ?",$str);
$str = preg_replace("/\{loop\s+(\S+)\s+(\S+)\s+(\S+)\}/","\n?php if(is_array(\\1)) foreach(\\1 AS \\2 = \\3) { ?",$str);
$str = preg_replace("/\{\/loop\}/","\n?php } ?\n",$str);
$str = preg_replace("/\{tag_([^}]+)\}/e", "get_tag('\\1')", $str);
$str = preg_replace("/\{\\$([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*\(([^{}]*)\))\}/","?php echo \\1;?",$str);
$str = preg_replace("/\{(\\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)\}/","?php echo \\1;?",$str);
}
function addquote($var)
{
return str_replace("\\\"", "\"", preg_replace("/\[([a-zA-Z0-9_\-\.\x7f-\xff]+)\]/s", "['\\1']", $var));
}
2、PHPCMS 的 {if ($v['n']
这个是PHPCMS引用了smarty模板吧,你可以直接搜索smarty语法的相关资料。
这句话就是 判断数组$v中的元素n的值是不是小于2,但是这是smarty的语法,smarty捕获到这个语句后会将其转换为php执行,并根据结果进行后续的处理。
3、php 的框架与模板
楼主的认知不对哦,以下为楼主解惑:
框架:在php源码的基础上,开发者将常用的功能进行二次封装形成的代码集合,其本身往往不具备任何可用的功能,其目的仅仅是使开发人员可以基于框架更快的开发出符合要求的应用。例如,不使用框架开发一个用户管理功能可能需要5天,使用框架可以将这个时间缩短到2天。实际上,对于任何一个项目,访问控制、数据库访问、文件处理等功能都是必备的,框架就是将这些常用功能进行了更易用的封装,避免开发人员在通用组件上重复开发,浪费时间。
模板:为了将PHP内容和html内容更好的分离为目的产生的一种应用,其主要目的是为了网页制作人员可以不去学习PHP就能修改页面的内容(可惜不学PHP还要学smarty,因此我个人并不觉得模板真的能带来什么实际的好处)
另外,如dede,DZ,PHPCMS等是基于PHP的产品,本身已经具备了大量的功能,安装之后就能使用,当然,因为需求的不同可能需要在该产品的基础上进行二次开发。
综述,模板没有太大的价值,完全可以在非用不可的时候再去学习,对于PHP开发人员来说,smarty可以立刻上手。它可以(也只能)被框架或PHP产品使用。框架是必须掌握的,定制性很强的项目必然都是基于框架开发的。PHP产品,如果你要开发的项目和某个PHP产品的功能达到80%以上的契合,那么应该考虑基于该产品进行开发。
一些网站提供简单的博客,留言板等的源码,不基于框架的小项目实际上只能称为练习,只有参考价值。
注:不是说不使用框架的项目就不算项目,事实上如果一个项目如果没有使用某某框架,其项目的一部分代码也必然的会具有框架的特征,即自定义框架也是框架。
4、php二次开发 如何使用phpcms模板?
如果只是针对于phpcms的模板的话还不是很难!
一种就是照猫画虎.在他原来的页面比如某处有新闻列表.你原样搬过来!直接复制到你新页面上!
二种PHPCMS(本人是用过PHPCMS2007,以下说明也以2007为例)他后台是可以建一些模块的!比如你建一个模板设置一些能数,什么栏目显示多少内容啥的!他会在后台生成一个PHPCMS的调用标签你复制到页面相应位置就可以了!
这些官方手册应该都会有说明的!慢慢来!我第一回做也是换PHPCMS的模板,
关于phpcms模板引擎语法和phpcms是什么框架的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。