js转化html字符

js转化html字符,第1张

        /*1.用浏览器内部转换器实现html转码*/

        htmlEncode:function (html){

            //1.首先动态创建一个容器标签元素,如DIV

            var temp = document.createElement ("div")

            //2.然后将要转换的字符串设置为这个元素的innerText(ie支持)或者textContent(火狐,google支持)

            (temp.textContent != undefined ) ? (temp.textContent = html) : (temp.innerText = html)

            //3.最后返回这个元素的innerHTML,即得到经过HTML编码转换的字符串了

            var output = temp.innerHTML

            temp = null

            return output

        },

        /*2.用浏览器内部转换器实现html解码*/

        htmlDecode:function (text){

            //1.首先动态创建一个容器标签元素,如DIV

            var temp = document.createElement("div")

            //2.然后将要转换的字符串设置为这个元素的innerHTML(ie,火狐,google都支持)

            temp.innerHTML = text

            //3.最后返回这个元素的innerText(ie支持)或者textContent(火狐,google支持),即得到经过HTML解码的字符串了。

            var output = temp.innerText || temp.textContent

            temp = null

            return output

        },

        /*3.用正则表达式实现html转码*/

        htmlEncodeByRegExp:function (str){ 

            var s = ""

            if(str.length == 0) return ""

            s = str.replace(/&/g,"&")

            s = s.replace(/

            s = s.replace(/>/g,">")

            s = s.replace(/ /g," ")

            s = s.replace(/\'/g,"'")

            s = s.replace(/\"/g,""")

            return s 

      },

      /*4.用正则表达式实现html解码*/

      htmlDecodeByRegExp:function (str){ 

            var s = ""

            if(str.length == 0) return ""

            s = str.replace(/&/g,"&")

            s = s.replace(/</g,"<")

            s = s.replace(/>/g,">")

            s = s.replace(/ /g," ")

            s = s.replace(/'/g,"\'")

            s = s.replace(/"/g,"\"")

            return s 

      }

    }

这个函数在很多场合下都能使用,这是整理后的希望能帮到你。

函数名:htmlspecialchars_decode

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

htmlspecialchars_decode — 将特殊的 HTML 实体转换回普通字符

说明

htmlspecialchars_decode ( string $string , int $flags = ENT_COMPAT | ENT_HTML401 ) : string

此函数的作用和 htmlspecialchars() 刚好相反。它将特殊的HTML实体转换回普通字符。

被转换的实体有: &, " (没有设置ENT_NOQUOTES 时), ' (设置了 ENT_QUOTES 时), <以及>。

参数

string

要解码的字符串

flags

用下列标记中的一个或多个作为一个位掩码,来指定如何处理引号和使用哪种文档类型。默认为 ENT_COMPAT | ENT_HTML401。

有效的 flags 常量

常量名 说明

ENT_COMPAT 转换双引号,不转换单引号。

ENT_QUOTES 单引号和双引号都转换。

ENT_NOQUOTES 单引号和双引号都不转换。

ENT_HTML401 作为HTML 4.01编码处理。

ENT_XML1 作为XML 1编码处理。

ENT_XHTML 作为XHTML编码处理。

ENT_HTML5 作为HTML 5编码处理。

返回值

返回解码后的字符串。

更新日志

版本 说明

5.4.0 增加了 ENT_HTML401、ENT_XML1、 ENT_XHTML 和 ENT_HTML5 等常量。

范例

示例 #1 一个 htmlspecialchars_decode() 的例子

this ->"

\n"

echo htmlspecialchars_decode($str)

// 注意,这里的引号不会被转换

echo htmlspecialchars_decode($str, ENT_NOQUOTES)

?>

两个办法:

如果来源名称是有限的几个。那么就在编辑页面里,手动将competition更改了。

比如:if( $laiyuan == 'competition' ){$laiyuan = '竞争'}

if( $laiyuan == 'baidu' ){$laiyuan = '百度'}

。。。。

这样页面上自然就显示中文了。但是前提是,这个来源的个数是有限的。

如果来源是不固定的X个,那么就用拼音转汉字,英文转汉字等库来转换一下。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6108222.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-15
下一篇 2023-03-15

发表评论

登录后才能评论

评论列表(0条)

保存