html js php 转义字符详解

一 . html文档中的转义字符详解

  HTML中<,>,&等有特殊含义(<,>,用于链接签,&用于转义),不能直接使用。这些符号是不显示在我们最终看到的网页里的,那如果我们希望在网页中显示这些符号,该怎么办呢?
  那就需要将这些符号进行转义,让浏览器不去按照它原来的意义去解释它。

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

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

  用实体(Entity)名字的好处是比较好理解,一看lt,大概就猜出是less than的意思,但是其劣势在于并不是所有的浏览器都支持最新的Entity名字。而实体(Entity)编号,各种浏览器都能处理。

  提示:实体名称(Entity)是区分大小写的。

  备注:同一个符号,可以用“实体名称”和“实体编号”两种方式引用,“实体名称”的优势在于便于记忆,但不能保证所有的浏览器都能顺利识别它,而“实体编号”则没有这种担忧,但它实在不方便记忆。

HTML特殊转义字符列表(只列出最常用的)

显示说明实体名称实体编号
半方大的空格&ensp;&#8194
全方大的空格&emsp;&#8195;
 不断行的空白格&nbsp;&#160;
<小于号&lt;&#60;
>大于号&gt;&#62;
&&符号&amp;&#38;
"双引号&quot;&#34;
©版权&copy;&#169;
®已注册商标&reg;&#174;



更详细的HTML转义字符点这里

二 . JS字符串中的转义字符详解

JS转义符
  JS转义符由’\ ‘开始
  比如要在字符串里面有’,可表示为\’

JS字符串编码中换行问题
  解释一下,我的意思是我需要字符串在存储的时候是连续的,而在编辑器里面显示的时候有换行,这样做的目的是代码结构清晰,这个时候的处理方法是:在字符串每行最后一个字符后面加上’\ ‘,意思是将编辑器里面的换行符给转义掉,表示当前行和下一行是连续的。注意第二行前面如果有空格或tab缩进,也是在字符串里面的。

情况一:如果在JS字符串里面编辑器换行,将导致JS错误。
情况二:在JS字符串里面包含\n,将这个字符串prepend到一个标签里面,这个\n将解释为空格。
情况三:在JS字符串里面包含\n,将这个字符串放在textarea标签的val里面,将解释为换行。

三 . PHP字符串相关问题

PHP转义符
  PHP转义符也是由’\ ‘开始
  比如要在字符串里面有“,可表示为\”
  比如要在字符串里面有 \,可表示为 \\

PHP字符串换行问题
  PHP字符串里面换行不能使用 \ 进行转义。
  但编辑器回车换行,不会报错

另外php字符串变量可以使用定界符表示,用起来更方便

$str = <<<EOP
    row1ContentContent
    row2ContentContent
EOP;
/*
这个字符串在存储时,是从第二行开始,包括第二行开始的tab缩进,以及第二行结束的换行符。
*/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值