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设计模式之装饰器模式实例详解

PHP设计模式之装饰器模式实例详解

本文实例讲述了PHP设计模式之装饰器模式。分享给大家供大家参考,具体如下: 装饰器模式又叫装饰者模式。装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创...

总结PHP删除字符串最后一个字符的三种方法

一、前言 从数据库中select()读取一对多的信息时,经常需要将取出的数组用某个特定的字符分割,然后拼接成字符串。 常见的语法格式: foreach ($arr as $key...

php判断是否为ajax请求的方法

本文实例讲述了php判断是否为ajax请求的方法。分享给大家供大家参考,具体如下: 先说前端使用 jQuery 时怎么区分: jQuery 发出 ajax 请求时,会在请求头部添加一个名...

php实现跨域提交form表单的方法【2种方法】

本文实例讲述了php实现跨域提交form表单的方法。分享给大家供大家参考,具体如下: 有时我们为了网站安全考虑,我们不允许直接跨域提交form表单数据,如果我们自己有这个需求呢?下面我们...

访问编码后的中文URL返回404错误的解决方法

访问编码后的中文URL返回404错误的解决方法

昨天做一个项目,其中有一个需求是每一张图片对应一小段文字对图片的说明,普通的做法是新建一个表然后把图片名与说明文字都记录到数据库内。仔细考虑后感觉这个应用不要数据库也能完成,我实现的方案...