html转义字符本文

当前位置 : 首页 > 网页制作 > CSS > html转义字符本文

html转义字符本文

来源: 作者: 时间:2016-01-25 10:02
本文与 tiankonguse 的博客里同步发表今天遇到了 html 字符转义的问题,于是记录一下。问题重现 在链接中,可以添加一个 title 字段,功能是对这个链接的描述。但是,这个 title 里的字符

本文与 tiankonguse 的博客里同步发表


今天遇到了 html 字符转义的问题,于是记录一下。


问题重现


在链接中,可以添加一个 title 字段,功能是对这个链接的描述。

但是,这个 title 里的字符有严格的限制,不能有引号,空格等字符,于是我就需要进行字符转义了。

这个 title 是在后台用 php 自动生成的,于是便需要使用 php 对字符串进行转义了。


解决方案


php 中有个字符串替换函数 str_replace 非常方便。

可以先看看我的字符转义的代码


$_title = str_replace( array("\""," ","<",">","&"), array("""," ","<",">","&"),$title);


这行代码进可以达到转义一些字符的目的。

第一个参数代表搜索的字符,第二个代表替换的字符,第三个是原串。


HTML 字符扩展知识


转义字符串(Escape Sequence)也称字符实体(Character Entity)。

在HTML中,定义转义字符串的原因有两个:第一个原因是像“<”和“>”这类符号已经用来表示HTML标签,因此就不能直接当作文本中的符号来使用。为了在HTML文档中使用这些符号,就需要定义它的转义字符串。当解释程序遇到这类字符串时就把它解释为真实的字符。在输入转义字符串时,要严格遵守字母大小写的规则。第二个原因是,有些字符在ASCII字符集中没有定义,因此需要使用转义字符串来表示。


转义字符串的组成


转义字符串(Escape Sequence),即字符实体(Character Entity)分成三部分:第一部分是一个&符号,英文叫ampersand;第二部分是实体(Entity)名字或者是#加上实体(Entity)编号;第三部分是一个分号。

比如,要显示小于号(<),就可以写 &lt; 或者 &#60; 。


HTML特殊转义字符列表


显示 说明 实体名称 实体编号
半方大的空白 &ensp; &#8194;
全方大的空白 &emsp; &#8195;
不断行的空白格 &nbsp; &#160;
< 小于 &lt; &#60;
> 大于 &gt; &#62;
& &符号 &amp; &#38;
" 双引号 &quot; &#34;
? 版权 &copy; &#169;
? 已注册商标 &reg; &#174;
? 商标(美国) ? &#8482;
× 乘号 &times; &#215;
÷ 除号 &divide; &#247;



Script转义符

转义序列 字符
\b 退格
\f 走纸换页
\n 换行
\r 回车
\t 横向跳格 (Ctrl-I)
\' 单引号
\" 双引号
\\ 反斜杠


参考资料

http://114.xixik.com/character/

Tag:
网友评论

<