thinkphp中修改模板标签定界符的方法

来自:互联网
时间:2020-05-22
阅读:

大家都知道在thinkphp里面,我们是通过在控制器里面给模板分配变量,然后在模板里面通过标签的方式来获取变量,假设有一个变量为$name,那么我们在模板里面就应该是通过。

{$name}的方式来获取变量值,在这里问题就出来了,假设我们的这个模板里面还有其他的JS,CSS,比如我在模板里面还有这样一段JS代码如下:

<script type="text/JavaScript">

Var str=6;

If(str>=6){

Alert('test');

}else{

Alert('');

}

</script>

如果模板里面有上述一段这样一段JS代码的话,那thinkphp解析模板的时候就会报错,因为在这段JS里面也出现了{}定界符,thinkphp就会认为{}里面的也是一个模板标签,然后去解析它,但它其实只是一段JS代码,所以就报错了。

当我们碰到这种情况应该怎么处理呢?下面我们就来看一下thinkphp中修改定界符的方法:

在thinkphp里面很多修改系统默认东西的操作都是通过配置文件来实现的,修改标签定界符也是通过在配置文件里面来指定的,我们来看一下具体应该怎么做,在config.php里面增加如下代码:

<?php

return array(

'TMPL_L_DELIM'=>'<{',

'TMPL_R_DELIM'=>'}>',

);

?>

通过上述代码我们也可以看出,标签定界符已经改成了<{}>,也就是说如果我们现在在控制器里面分配一个变量$this->assign(‘name’,$name),这个时候我们在模板里面就应该这样写了<{$name}>,这样就不会和JS或者CSS冲突了。

返回顶部
顶部