zoukankan      html  css  js  c++  java
  • php中htmlspecialchars,htmlentities用法

     

    [导读] 在php中htmlspecialchars, 将特殊字元转成 HTML 格式,而htmlentities,将所有的字元都转成 HTML 字串 了,下面我来分别简单的介绍。 htmlentities用法 代码如下复制代码

    在php中htmlspecialchars, 将特殊字元转成 HTML 格式,而htmlentities,将所有的字元都转成 HTML 字串 了,下面我来分别简单的介绍。
     

    htmlentities用法



    $str = "John & 'Adams'";
    echo htmlentities($str, ENT_COMPAT);
    echo "
    ";
    echo htmlentities($str, ENT_QUOTES);
    echo "
    ";
    echo htmlentities($str, ENT_NOQUOTES);
    ?>

    John & 'Adams'
    John & 'Adams'
    John & 'Adams'

    浏览器输出:
     代码如下 复制代码

    htmlspecialchars用法

    & (和) 转成 &
    " (双引号) 转成 "
    < (小于) 转成 <
    > (大于) 转成 >



    $str = "John & 'Adams'";
    echo htmlspecialchars($str, ENT_COMPAT);
    echo "
    ";
    echo htmlspecialchars($str, ENT_QUOTES);
    echo "
    ";
    echo htmlspecialchars($str, ENT_NOQUOTES);
    ?>

     代码如下 复制代码

    他们的区别

    这两个函数的功能都是转换字符为HTML字符编码,特别是url和代码字符串。防止字符标记被浏览器执行。使用中文时没什么区别,但htmlentities会格式化中文字符使得中文输入是乱码

    htmlentities转换所有的html标记,htmlspecialchars只格式化& ' " < 和 > 这几个特殊符号

     代码如下 复制代码

    $str = '测试页面';

    echo 'htmlentities指定GB2312编码:'.htmlentities($str,ENT_COMPAT,"GB2312").'';

    echo 'htmlentities未指定编码:'.htmlentities($str).'';

    $str = '测试页面';

    echo htmlspecialchars($str).'';

    效果:

     代码如下 复制代码

    htmlentities指定GB2312编码:测试页面

    htmlentities未指定编码:²âÊÔÒ³Ãæ

    测试页面

  • 相关阅读:
    jvm09
    jvm08
    jvm07
    求解最长公共子序列问题
    归并排序
    求解N皇后问题
    快速排序算法
    求解0/1背包问题
    求解全排列问题
    求解最大连续子序列和问题
  • 原文地址:https://www.cnblogs.com/lemon66/p/4224894.html
Copyright © 2011-2022 走看看