PHP针对常规模板引擎中与CSS/JSON冲突的解决方法

yipeiwu_com7年前PHP代码库

本文实例讲述了PHP针对常规模板引擎中与CSS/JSON冲突的解决方法,有一定的实用价值,具体分析如下:

本文主要针对对象为Smarty与Dwoo

在Smarty中经常会出现和CSS/JS的语法存在冲突的情况,因为二者都需要使用大括号{}。虽然可以改Smarty的界定符,但你在一个现存系统中,去修改所有相关代码,是不划算的。解决方法如下:

1. 避免同时出现

通过外部引用的方式避免。问题是避无所避。所以这种情况只适合少量简单的情况。

2. 修改Smarty界定符

3.可以使用Smarty的literal标记将样式表信息包围起来,如下所示:

<html> 
<head> 
<title>{$title}</title> 
{literal} 
<styletypestyletype="text/css"> 
p{ 
margin::2px 
} 
</style> 
{/literal} 
</head> 

<script type="text/javascript">
function goods_show(id){

<!--{literal}-->

art.dialog.open(url,{id:'select',title:'的:',width:760,height:380,padding: '10px'});

<!--{/literal}-->
  }
</script>

相比较而言第三种方法无疑是绿色环保的,在遇到冲突的地方,加上literal标记包裹。

该方案对Dwoo引擎同样有效。

相关文章

Php 构造函数construct的前下划线是双的_

定义和用法 __construct() 函数创建一个新的 SimpleXMLElement 对象。 如果成功,则该函数返回一个对象。如果失败,则返回 false。 语法__constr...

php实现执行某一操作时弹出确认、取消对话框

复制代码 代码如下: <script> function del(){ if(confirm("确定要删除吗?")){ alert('删除成功!'); return true...

PHP常见数学函数及BC高精度数学函数用法示例

本文实例讲述了PHP常见数学函数及BC高精度数学函数用法。分享给大家供大家参考,具体如下: 1. bcadd 任意精度数的相加 2. bcsub 任意精度数的减法 3. bcmul 乘法...

详解PHP序列化反序列化的方法

经常看到一些配置文件里面存放的是一些类似带有格式的变量名称和值,其实就是一个序列化的过程,在需要用到这些数据库的时候会进行一个反序列化过程,就是将这个字符串再还原成他原来的数据结构。下面...

PHP 应用容器化以及部署方法

PHP 应用容器化以及部署方法

PHP 是世界上最好的语言。 经典的 LNMP(linux + nginx + php + mysql)环境有很多现成的部署脚本,但是在 Docker 盛行的今天,依然有很多同学在如何...