偶在网上闲逛。突然发现一段内容,对应家中现有的有线电视情况,突然感到好紧张。。。贴上部分内容,陪我一起震惊吧。
原文:http://www.dbanotes.net/mylife/fuck_huashu_tv.html
- 自从用了这个遥控器,我就感觉不对劲儿,怎么赛事正精彩的时侯屏幕上会出来个小窗口提示有奖答题呢? 第一次看到以为是央视搞的,后来频繁的出现感觉有点不对,按遥控器的"退出"键,居然提示,"确定退出么?" 按"确定",居然也要半天才能消失这个小浮动窗口。真是有些震惊啊,这下真的互动了,弹窗广告居然搞到电视上来了!
-
- 流氓会武术,谁都挡不住! 相信这个技术会被更多有线电视运营商采用的。到时候面对时不时的弹窗广告,加上原来就有的贴片广告,以及那些"精彩绝伦"的电视购物广告,这电视还能看下去么? 奥运过后,电视关闭!
好佩服现在的厂商呀。这是否和当年的分众一个想法?只是这个想法比分众还疯狂啊。估计是和电信学的吧?
写代码的时候不可避免的会使用到注释。大多数的情况下,我们都是使用<!-- 这里是注释 -->,因为这是HTML自带的注释功能,在这里的代码都不会被显示到浏览器。
然而,使用了smarty之类,我们确实不是很建议这样使用,因为,在<!---->标记里的smarty代码其实还是被解析了,如果是这样的话,那么,我们其实是多做了很多事情,却没有被显示出来,那就是说,我们其实多做了很多无用功。
因此,我们在使用smarty模版的时候,应该根据smarty的规范来。让我们看看手册怎么说:
所有例子中,我们假定你使用缺省的分隔符。Smarty中,所有在分隔符之外的内容被显示为静态内容,或者说不会被改变。一旦Smarty遇见分隔符,它将尝试解释它们,然后在其位置处显示合适的内容。
注释
模板注释由星号包围,继而由分隔符包围,型如:{* 这是一个注释 *}。Smarty注释不会在最终模板的输出中显示,这点和<!-- HTML comments -->不同。前者对于在模板中插入内部注释有用,因为没有人能看到。;-)
模版中的注释
- {* 这是Smarty注释,不出现在编译后的输出中 *}
- <html>
- <head>
- <title>{$title}</title>
- </head>
- <body>
-
- {* 另一个单行Smarty注释 *}
-
-
- {* 这是一个多行
- Smarty注释
- 并不发送到浏览器
- *}
-
- {*********************************************************
- 多行注释块,包含了版权信息
- @ author: bg@example.com
- @ maintainer: support@example.com
- @ para: var that sets block style
- @ css: the style output
- **********************************************************}
-
- {* 包含了主LOGO和其他东西的头文件 *}
- {include file='header.tpl'}
-
-
- {* 开发注解:$includeFile变量在foo.php脚本中赋值 *}
-
- {include file=$includeFile}
-
- {* 该<select>块是多余的 *}
- {*
- <select name="company">
- {html_options options=$vals selected=$selected_id}
- </select>
- *}
-
- {* 模板的cvs标记。下面的36应该是美元符号。
- 但是在CVS中被转换了。 *}
- {* $Id: Exp $ *}
- {* $Id: *}
- </body>
- </html>
smarty中的变量和平时使用有点区别,比如$aa.bb其实代表的是$aa['bb'],具体如何个使用法,其实在手册里已经有详细说明了
Smarty可以识别嵌入在双引号中赋值的变量,只要变量名只包含数字,字母,下划线和方括号[](参见命名)。如果有其它字符(如句点,对象引用等),变量必须由反引号对`backticks`包含。你不可以嵌入修饰符,它们必须永远在引号之外使用。
实际使用中应该是这样的:
语法例子:
{func var="test $foo test"} <-- 使用$foo
{func var="test $foo_bar test"} <-- 使用$foo_bar
{func var="test $foo[0] test"} <-- 使用$foo[0]
{func var="test $foo[bar] test"} <-- 使用$foo[bar]
{func var="test $foo.bar test"} <-- 使用$foo(不是$foo.bar)
{func var="test `$foo.bar` test"} <-- 使用$foo.bar
{func var="test `$foo.bar` test"|escape} <-- 修饰符在引号外!
实际例子:
{include file="subdir/$tpl_name.tpl"} <-- 将以实际值替换$tpl_name
{cycle values="one,two,`$smarty.config.myval`"} <-- 必须有反引号!
看清楚哦。平时在使用的时候应该是感觉不出问题的,只有用在函数、循环里面,这才会成为使用中的问题。