php模板技术php是怎么向模板中传值的呢?
接了一个模板的网站可是首页和html是分开写的,查了之后发现实用模板引擎。于是我自己加了东西可是在模板中却调不到值,请问原理是什么有没一个简单的范例...
接了一个模板的网站可是首页和html是分开写的,查了之后发现实用模板引擎。于是我自己加了东西可是在模板中却调不到值,请问原理是什么有没一个简单的范例
展开
3个回答
展开全部
模板引擎的原理就是先在模板上需要写上变量地方先写几个自己设置的占位符
等php文件调用的时候,根据实际变量把他替换掉
给你一个简单的比方:
<body>
{$names}
</body>
这是一个简单的模板,比如这个文件名叫:index.htm
然后:
<?php
$Names = '小明'
$Contents = file_get_contents('index.htm');
$Html = preg_replace('/{\$(.*)}/i', '<?php echo $1;?>', $Contents);
file_put_contents('index.tpl.php', $Html);
echo include_once 'index.tpl.php';
?>
这样,你运行后,页面上就会显示 小明 2 个字
查看源代码就会看到
<body>
小明
</body>
当然,模板引擎技术,远远不是上面所说的那么简单,但原理是产不多的
等php文件调用的时候,根据实际变量把他替换掉
给你一个简单的比方:
<body>
{$names}
</body>
这是一个简单的模板,比如这个文件名叫:index.htm
然后:
<?php
$Names = '小明'
$Contents = file_get_contents('index.htm');
$Html = preg_replace('/{\$(.*)}/i', '<?php echo $1;?>', $Contents);
file_put_contents('index.tpl.php', $Html);
echo include_once 'index.tpl.php';
?>
这样,你运行后,页面上就会显示 小明 2 个字
查看源代码就会看到
<body>
小明
</body>
当然,模板引擎技术,远远不是上面所说的那么简单,但原理是产不多的
更多追问追答
追问
恩,谢谢你的解答,但是上面的那些我很多都不明白,方便解释下吗
追答
哎!
就一句话
你在模板引擎中
或者说在模板上单单写模板代码没有用啊
比如:
你在模板上写一个{$names}
这是没有用的啊,因为你的整个程序,压根就没有names这个变量,你就是写了,也没有用
展开全部
最简单的:
a.html
<div><?php echo $b;?></div>
a.php
function view($html,$data=array()){
extract($data);
include($html.'.html');
}
view('a',array('b'=>$b));
类似这样的,实际会复杂一点,也可能会有点不同。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
就是利用正在则表达式替换模板中的东西
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询