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

yipeiwu_com6年前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自定义函数call_user_func和call_user_func_array详解

call_user_func函数类似于一种特别的调用函数的方法,使用方法如下: 复制代码 代码如下: function a($b,$c) { echo $b; echo $c; } ca...

PHP面向对象程序设计之对象克隆clone和魔术方法__clone()用法分析

本文实例讲述了PHP面向对象程序设计之对象克隆clone和魔术方法__clone()用法。分享给大家供大家参考,具体如下: 1.对象克隆 clone PHP4面向对象功能一个很大的缺点,...

PHP7新特性之抽象语法树(AST)带来的变化详解

本文分析了PHP7新特性之抽象语法树(AST)带来的变化。分享给大家供大家参考,具体如下: 这里大部分内容参照 AST 的 RFC 文档而成:https://wiki.php.net/r...

ob_start(),ob_start('ob_gzhandler')使用

输出前使用尽量使用 ob_start();可以加快输出速度,适用NT 对unix类服务器 如果使用ob_start('ob_gzhandler');输出效率将更高...

php skymvc 一款轻量、简单的php

改框架主要用于实现多个程序员之间的协同开发以及mvc开发模式的实现.skymvc采用mvc开发方式,框架本身易扩展。skymvc作为天网计划的基础框架,秉承易用、易学、共同开发的优良传统...