<?php
$str = <<<ppp
<title>{$title}</title>
测试变量常量:{PTCMS_ROOT}<br>
测试loop循环:<br>
<!--{loop $data $key $value}-->
{$key}-->{$value['articlename']}<br>
<!--{/loop}-->
测试for循环:<br>
<!--{for $i=0;$i<5;$i++}-->
{$data[$i]['articlename']}
<!--{/for}-->
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<!--{loop $data $key $dvalue}-->
{$key}
<!--{loop $dvalue $key $value}-->
{$key}-->{$value}<br>
<!--{/loop}--><br>
<!--{/loop}-->
ppp;
$p="\$([^\[]*)\[\$([^]]*)]\['([^']*)']";
if (preg_match("/\{($p)\}/", $str,$arr)) {
echo 'ok';
}else{
echo 'err';
}
测试代码如上
想匹配出{$data[$i]['articlename']}中的$data[$i]['articlename']部分
这个数组当然是任意的恩 这是在研究制作一个小模板引擎
解决方案 »
- PHP如何对XML进行增删改查
- Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result res
- PHP菜鸟级别问题,希望指教!
- 把news类进行面向对象封装,有疑问。
- 无法加载mssql
- SMTP Error: Could not authenticate怎么解决
- 请教大家一个问题,在LINUX下如何把PHP文件挂到apache2服务器上。
- 这个SQL语句怎么写啊?
- Smarty IF 语句的问题!
- 几种Web开发工具的比较?
- 求助, apache换成worker-mpm后php就403了
- $_SERVER["REQUEST_URL"]为何是空啊?
$data不是固定不变的
模板引擎基本都是使用正则来进行匹配,最终还是要转换为原生的PHP,建议使用正则来完成