jquery与php的HTML转义与反转义

半城伤御伤魂 提交于 2020-02-10 02:02:21

1.jquery

(1)Html转义

    var tmp = '<a href="https://www.baidu.com/">连接</a>';
    var tmp_rev = $('<div>').text(tmp).html();
    console.log(tmp_rev);

结果:

  &lt;a href="https://www.baidu.com/"&gt;连接&lt;/a&gt;

(2)Html反转义

    var tmp = '<a href="https://www.baidu.com/">连接</a>';
    var tmp_rev = $('<div>').text(tmp).html();
    var tmp_rev_rev = $('<div>').html(tmp_rev).text();
    console.log(tmp_rev_rev);

结果 :

  <a href="https://www.baidu.com/">连接</a>

2.php

(1)转义

htmlentities() 把字符转换为 HTML 实体

htmlspecialchars() 把预定义的字符转换为 HTML 实体 

预定义的字符是:

  • & (和号)成为 &
  • " (双引号)成为 "
  • ' (单引号)成为 '
  • < (小于)成为 <
  • > (大于)成为 >

(2)反转义

html_entity_decode() 把 HTML 实体转换为字符

htmlspecialchars_decode() 把预定义的 HTML 实体转换为字符

$tmp = '<a href="https://www.baidu.com/">连接</a>';
$tmp_rev = htmlentities($tmp);
$tmp_rev_rev = html_entity_decode($tmp_rev);
var_dump($tmp);
var_dump($tmp_rev);
var_dump($tmp_rev_rev);

$tmp = '<a href="https://www.baidu.com/">连接</a>';
$tmp_rev = htmlspecialchars($tmp);
$tmp_rev_rev = htmlspecialchars_decode($tmp_rev);
var_dump($tmp);
var_dump($tmp_rev);
var_dump($tmp_rev_rev);

结果:

  

注:

  有中文的时候,最好用 htmlspecialchars ,否则可能乱码

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!