php字符串中转义成特殊字符实例讲解

在php的字符串使用时,我们有学会一些转义字符,相信大家在记忆这些知识点的时候费了不少的功夫。本篇我们为大家带来的是字符串的转义方法,涉及到特殊字符的使用,主要有两种方法可以实现:mysql库函数和转义函数。下面就这两种方法,在下文中展开详细的介绍。

1、转义字符说明

双引号中,所有转义字符都可正常使用。

单引号中,只有单引号转义字符可以使用("),别的都不可使用。

2、利用mysql库函数

PHP版本在7.0之前:

mysql_escape_string ( string $unescaped_string ) : string

PHP版本在7.0之后:

mysqli_real_escape_string ( mysqli $link , string $escapestr ) : string

3、利用转义函数addslashes()

适合版本PHP4、PHP5、PHP7

addslashes ( string $str ) : string

PHP 5.4 之前 PHP 指令 magic_quotes_gpc 默认是 on, 实际上所有的 GET、POST 和 COOKIE 数据都用被 addslashes() 了。 不要对已经被magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。 遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。即get_magic_quotes_gpc()返回false时,再使用addslashes()进行特殊字符转义。示例如下

function myaddslashes($data)
{
  if(false == get_magic_quotes_gpc())
  {
    return addslashes($data);//未启用魔术引用时,转义特殊字符
  }
  return $data;
}

总结:

与PHP字符串转义相关的配置和函数如下:

1.magic_quotes_runtime

2.magic_quotes_gpc

3.addslashes()和stripslashes()

4.mysql_escape_string()

5.addcslashes()和stripcslashes()

6.htmlentities() 和html_entity_decode()

7.htmlspecialchars()和htmlspecialchars_decode()

到此这篇关于php字符串中转义成特殊字符实例讲解的文章就介绍到这了,更多相关php字符串中转义成特殊字符内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

时间: 2021-02-05

PHP中addslashes()和stripslashes()实现字符串转义和还原用法实例

本文实例讲述了PHP中addslashes()和stripslashes()实现字符串转义和还原用法.分享给大家供大家参考,具体如下: PHP中addslashes() 函数返回在预定义字符之前添加反斜杠的字符串. 预定义字符是: 单引号(') 双引号(") 反斜杠(\) NULL stripslashes() 函数删除由 addslashes() 函数添加的反斜杠. 用法示例如下: <?php $str="select * from `book` where bookname=

JavaScript中字符串分割函数split用法实例

本文实例讲述了JavaScript中字符串分割函数split用法.分享给大家供大家参考.具体如下: 先来看下面这段代码: <script type="text/javascript"> var str="How are you doing today?" document.write(str.split(" ") + "<br />") document.write(str.split("&q

php字符串替换函数substr_replace()用法实例

本文实例讲述了php字符串替换函数substr_replace()用法.分享给大家供大家参考.具体分析如下: substr_replace用于在指定字符串中替换指定位置的子字符串 <?php $string = "Warning: System will shutdown in NN minutes!"; $pos = strpos($string, "NN"); print(substr_replace($string, "15", $p

php字符串过滤strip_tags()函数用法实例分析

本文实例讲述了php字符串过滤strip_tags()函数用法.分享给大家供大家参考,具体如下: strip_tags - 从字符串中去除 HTML 和 PHP 标记,非常重要的函数 (PHP 4, PHP 5, PHP 7) string strip_tags ( string $str [, string $allowable_tags ] ) $str:输入字符串. $allowable_tags:可选,指定不被去除的字符列表. 作用:剥去字符串中的 HTML.XML 以及 PHP 的标签

php字符串截取函数mb_substr用法实例分析

本文实例讲述了php字符串截取函数mb_substr用法.分享给大家供大家参考,具体如下: string mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_encoding() ]] )-截取字符串 (PHP 4 >= 4.0.6, PHP 5) $str 要获取字符串的目标字符串(字符串起始位置为0) $start,$str中要使用的第一个字符的位置 $len

Android中AlertDialog四种对话框的最科学编写用法(实例代码)

首先我们上图: xml的代码如下,用于编写按钮: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match

Lua中的loadfile、dofile、loadstring、require用法实例

复制代码 代码如下: do  local errorInfo = loadfile("test.lua"); --load code file  if(errorInfo == nil) then   print("load file failed");  else   print("load file success");   local doInfo = dofile("test.lua") --complie the f

php 反斜杠处理函数addslashes()和stripslashes()实例详解

php 反斜杠处理函数 addslashes():对输入字符串中的某些预定义字符前添加反斜杠,这样处理是为了数据库查询语句等的需要.这些预定义字符是:单引号 (') ,双引号 (") ,反斜杠 (\) ,NULL. stripslashes():删除由 addslashes() 函数添加的反斜杠.该函数用于清理从数据库或 HTML 表单中取回的数据.(若是连续二个反斜杠,则去掉一个,保留一个:若只有一个反斜杠,就直接去掉.) 默认情况下,PHP 指令 magic_quotes_gpc 为 on,

php中addslashes函数与sql防注入

本文实例讲述了php中addslashes函数与sql防注入.分享给大家供大家参考.具体分析如下: addslashes可会自动给单引号,双引号增加\\\\\\,这样我们就可以安全的把数据存入数据库中而不黑客利用,参数'a..z'界定所有大小写字母均被转义,代码如下: 复制代码 代码如下: echo addcslashes('foo[ ]','a..z'); //输出:foo[ ] $str="is your name o'reilly?"; //定义字符串,其中包括需要转义的字符 e

Lua中的string库(字符串函数库)总结

Lua解释器对字符串的支持很有限.一个程序可以创建字符串并连接字符串,但不能截取子串,检查字符串的大小,检测字符串的内容.在Lua中操纵字符串的功能基本来自于string库. 字符串库中的一些函数是非常简单的: string.len(s)          返回字符串s的长度: string.rep(s, n)      返回重复n次字符串s的串:你使用string.rep("a", 2^20)可以创建一个1M bytes的字符串(比如,为了测试需要): string.lower(s)