美文网首页
特殊符号编码问题

特殊符号编码问题

作者: Jalon | 来源:发表于2016-05-19 13:49 被阅读0次

补充:http://www.cnblogs.com/tylerdonet/p/3483836.html
在html里有特殊意义的字符比如<,这种直接写<那么久执行了,浏览器会认为是标签,所以说应该使用它对应的实体,实体解析后显示的是对应字符。

转义:以反斜杠开头的不可显示的特殊字符通常称为控制字符,也被称为转义字符。通过转义字符可以在字符串中添加不可显示的特殊字符,或者防止引号匹配混乱的作用。加了反斜杠以后就只是用而不进行显示。通常加反斜杠还可以用来匹配特殊符号的实体 如'

php从后端返回的数据是实体名称,但是由于单引号的兼容问题(ie上不支持' )所以说单引号使用了实体的编号即'
在做#过滤的时候 需要先把'替换为',防止误伤。。。
然后在最后的字符urlencode编码的时候,bingo防御直接的单引号(但是不防御实体或编码),所以提前把单引号转换为实体编号&#039,' 实体编号比实体名称的好处就是,几乎所有浏览器都支持,而相对更好记的实体名称方式,ie兼容有问题。

竟然还有这种。。。如果你的页面是gbk,但是跳过去的另一个页面是utf8,那么你需要下面这样转一下。。

$t = urlencode(mb_convert_encoding($matchs[1], 'utf-8', 'gb2312'));

相关文章

网友评论

      本文标题:特殊符号编码问题

      本文链接:https://www.haomeiwen.com/subject/ibkgrttx.html