常用的转义字符
转义字符串的组成
转义字符串(Escape Sequence),即字符实体(Character Entity)分成三部分:第一部分是一个&符号,英文叫ampersand;第二部分是实体(Entity)名字或者是#加上实体(Entity)编号;第三部分是一个分号。
比如,要显示小于号(<),就可以写 < 或者 < 。
用实体(Entity)名字的好处是比较好理解,一看lt,大概就猜出是less than的意思,但是其劣势在于并不是所有的浏览器都支持最新的Entity名字。而实体(Entity)编号,各种浏览器都能处理。
提示:实体名称(Entity)是区分大小写的。
备注:同一个符号,可以用“实体名称”和“实体编号”两种方式引用,“实体名称”的优势在于便于记忆,但不能保证所有的浏览器都能顺利识别它,而“实体编号”则没有这种担忧,但它实在不方便记忆。
如何显示空格?通常情况下,HTML会自动截去多余的空格。不管你加多少空格,都被看做一个空格。比如你在两个字之间加了10个空格,HTML会截去9个空格,只保留一个。为了在网页中增加空格,你可以使用 表示空格。
?
Function htmlentities(str)???? For i = 1 to Len(str)???????? char = mid(str, i, 1)???????? If Ascw(char) > 128 then???????????? htmlentities = htmlentities & "&#" & Ascw(char) & ";"???????? Else???????????? htmlentities = htmlentities & char???????? End if???? NextEnd Function
?
?
coldfusion版
?
function nochaoscode(str){???? var new_str = “”;???? for(i=1; i lte len(str);i=i+1){???????? if(asc(mid(str,i,1)) lt 128){???????????? new_str = new_str & mid(str,i,1);???????? }else{???????????? new_str = new_str & “&##” & asc(mid(str,i,1));???????? }???? }???? return new_str;}
?
?
附:
在php中我们可以用mbstring的mb_convert_encoding函数实现这个正向及反向的转化。 如:
?
mb_convert_encoding ("你好", "HTML-ENTITIES", "gb2312"); //输出:你好
mb_convert_encoding ("你好", "gb2312", "HTML-ENTITIES"); //输出:你好
?
如果需要对整个页面转化,则只需要在php文件的头部加上这三行代码:
?
mb_internal_encoding("gb2312"); // 这里的gb2312是你网站原来的编码
mb_http_output("HTML-ENTITIES");
ob_start('mb_output_handler');