与HTML实体相关的函数

htmlspecialchars函数

描述:预定义的字符转换为HTML实体

语法:string htmlspecialchars(string $string [,int $flags = ENT_COMPAT)

说明:$flags参数规定如何处理引号,其值可以为:

ENT_COMPAT 默认,仅编码双引号

ENT_QUOTES 编码双引号和单引号

ENT_NOQUOTES 不编码任何引号

$str = "A>B,B<C,Tom&John,He said: \"OK\"";

echo htmlspecialchars($str);

//通过str_replace进行转换
$str1 = str_replace('&','&amp;',$str);//必须是第一 $str2 = str_replace('>','&gt;',$str1);
$str2 = str_replace('<','&lt;',$str2);
$str2 = str_replace('"','&quot;',$str2);
$str2 = str_replace("'",''',$str2);
echo '<br>';
echo $str2;

那么htmlspecialchars($str)这个函数就是等价于下面的一组函数

至于为什么一定要先替换&,因为后面的实体都带有&,所以要先换它,避免后面把实体的&符号给换掉了。

PHP字符串转实体函数的更多相关文章

  1. PHP基础系列(一) PHP字符串相关的函数分类整理

    PHP提供了非常丰富的自带函数,有人说PHP是一个大的函数库,在某种程度上我是非常认同这种观点的,这个也是PHP非常容易上手的原因之一.在使用PHP编程的时候,需要实现某一功能的时候,如果说php自带 ...

  2. 介绍一个很爽的 php 字符串特定检索函数---strpos()

    大家在用 php 开发的时候 是否 有遇到过,对于一个获取的字符串,如果想要特定检测它是否 含有某个特定的字符或者子字符串,总是找不到好方法,或者根本做不到,迫于无奈而使用foreach. 函数: s ...

  3. PHP常用字符串的操作函数

    字符串转换类函数 addcslashes函数:以C语言风格使用反斜线转义字符串中的字符 addslashes函数:使用反斜线引用字符串 chop函数:清除字符串中的连续空格 get_html_tran ...

  4. Python列表、元组、字典和字符串的常用函数

    Python列表.元组.字典和字符串的常用函数 一.列表方法 1.ls.extend(object) 向列表ls中插入object中的每个元素,object可以是字符串,元组和列表(字符串“abc”中 ...

  5. JavaScript实现字符串的contains函数

    JavaScript实现字符串的contains函数 / *  * string:原始字符串  * substr:子字符串  * isIgnoreCase:忽略大小写  * / function co ...

  6. 【C语言】10-字符和字符串常用处理函数

    一.字符处理函数 下面介绍的两个字符处理函数都是在stdio.h头文件中声明的. 1.字符输出函数putchar putchar(65); // A putchar('A'); // A int a ...

  7. php字符串常用处理函数(数组的拆分、查找替换)

    //字符串常用函数    $a = "hello";    echo strlen($a); //输出字符串的长度        $b = "Hello";   ...

  8. C# 字符串加密解密函数

    原文:C# 字符串加密解密函数 using System; using System.Text;using System.Security.Cryptography; using System.IO; ...

  9. php的数组与字符串的转换函数整理

    1.将一个字符串转化为数组 str_split()用于将一个字符串转化为数组 语法: str_split(string,length) //string是必须的,是要分割的字符串: //length是 ...

随机推荐

  1. js异步导致的错误

    没想到jquery的$.each也是异步,本身是循环验证数据,然后再提交数据,但是发现验证和提交一起发生了. 技术还不到位,所以 在定义了一个变量,var step = 0; 每循环一次step自增, ...

  2. vue element upload上传、清除等

    如果项目中可以使用file-list,那我们可以点击file-list删除文件列表: 有时候项目中是不要这个文件列表的,所以在上传成功以后,文件列表一直存在,要重新上传就必须刷新页面,所以我们需要手动 ...

  3. poj3279(枚举)

    题目链接:https://vjudge.net/contest/294982#problem/C 题意:给定由0,1组成的m*n型矩阵,每次翻转一个结点会顺带翻转与其相邻的结点,问将矩阵翻转为全0的最 ...

  4. MongoDB之Array Object的特殊操作

    相比关系型数据库,Array[1,2,3,4,5]和Object{'name':'Wjs'}是MongoDB比较特殊的类型 db.Wjs.insert({"name":" ...

  5. label标签的显示和隐式关联问题

    按钮的html <!-- 学校 --> <div class="layui-inline"> <label class="layui-for ...

  6. switch只跟在这些之后

    switch case 可以用在他们之后

  7. C++求图任意两点间的所有路径

    基于连通图,邻接矩阵实现的图,非递归实现. 算法思想: 设置两个标志位,①该顶点是否入栈,②与该顶点相邻的顶点是否已经访问. A 将始点标志位①置1,将其入栈 B 查看栈顶节点V在图中,有没有可以到达 ...

  8. Shell教程 之test命令

    Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值.字符和文件三个方面的测试. 1.数字测试 参数 说明 -eq 等于则为真 -ne 不等于则为真 -gt 大于则为真 -ge 大于 ...

  9. JS中取得<asp:TextBox中的值

    var s = document.getElementById("<%=txt_DaShen.ClientID %>").value; 注:txt_DaShen 为as ...

  10. Redis 中 redis.conf配置详细解析

    ########################################### 基本配置 ##################################### # 端口 port 666 ...