`
wangshaofei
  • 浏览: 283785 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

PHP如何去掉转义

    博客分类:
  • php
php 
阅读更多

string addslashes ( string str)

返回字符串,该字符串为了数据库查询语句等的需要在某些字符前加上了反斜线。

这些字符是单引号(\')、双引号(\")、反斜线(\\)与 NUL(NULL 字符)

stripslashes作用相反在处理mysql和GET、POST的数据时,常常要对数据的引号进行转义操作。

 

PHP中有三个设置可以实现自动对’(单引号),”(双引号),\\(反斜线)和 NULL 字符转义。 

PHP称之为魔术引号,这三项设置分别是 magic_quotes_gpc 影响到 HTTP 请求数据(GET,POST 和 COOKIE)。不能在运行时改变。在 PHP 中默认值为 on。

 

magic_quotes_runtime 如果打开的话,大部份从外部来源取得数据并返回的函数,包括从数据库和文本文件,所返回的数据都会被反斜线转义。该选项可在运行的时改变,在 PHP 中的默认值为 off。

 

magic_quotes_sybase 如果打开的话,将会使用单引号对单引号进行转义而非反斜线。此选项会完全覆盖 magic_quotes_gpc。如果同时打开两个选项的话,单引号将会被转义成 ”。而双引号、反斜线 和 NULL 字符将不会进行转义。虽然方便的实现了对特殊符号的自动转义,但是这样会使得程序效率降低,并导致程序可移植变得麻烦。

 

在不知道服务器ini设置的情况 下,还需要调用get_magic_quotes_gpc() ,get_magic_quotes_runtime() 或ini_get()来检测状态。

使用stripslashes去掉转义

分享到:
评论

相关推荐

    PHP字符转义相关函数小结(php下的转义字符串)

    stripcslashes()函数的作用是去除字符串中由addcslashes()添加的转义字符。 htmlentities()和html_entity_decode()是一对函数,用于在字符和HTML实体之间进行转换。htmlentities()函数将某些字符转换为对应的HTML...

    php实现处理输入转义字符的代码

    在PHP编程中,处理输入转义字符是一个重要的安全措施,主要目的是防止SQL注入和其他类型的安全攻击。当用户通过HTTP请求(GET、POST、COOKIE)提供数据时,这些数据可能包含特殊字符,如单引号(')、双引号(")、...

    使用php转义输出HTML到JavaScript

    首先,函数`jsformat`会对输入的字符串进行修剪(`trim`),去除字符串两端的空白字符。接下来,它使用`str_replace`函数移除字符串中不必要的字符或序列。例如,连续的空白字符(`\\s\\s`)被简化为单个空白字符(`...

    PHP 转义使用详解

    在数据输出时,为了保证数据显示正确,通常会使用stripslashes函数去除由addslashes函数添加的转义字符。在输出到HTML页面时,建议使用htmlspecialchars函数将特定字符转换为对应的HTML实体。这样做既防止了跨站脚本...

    php 防止单引号,双引号在接受页面转义

    方法二:如果不能或不想修改php.ini,你可以在代码中使用`stripcslashes()`函数来手动去除转义。例如,如果你接收到一个可能被转义的字符串 `$str`,可以使用 `stripcslashes($str)` 来移除转义的字符。 了解了如何...

    ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法

    一个更稳健的解决方案是,首先使用`stripslashes`函数去除可能存在的多余反斜线,然后再进行正常的转义操作。这是修改后的`escape_string`方法: ```php public function escape_string($str) { $str = ...

    PHP去掉json字符串中的反斜杠\及去掉双引号前的反斜杠

    当从POST请求中接收到JSON字符串时,例如`$_POST['json']`,可以使用`stripslashes()`来去除字符串中的转义字符。示例如下: ```php $str = stripslashes($_POST['json']); ``` 之后,可以使用`json_decode()`函数...

    PHP使用json_encode函数时不转义中文的解决方法

    需要注意的是,这个自定义的json_encode方法是通过手动替换的方式来去除字符串中的转义字符,这可能不如PHP原生的json_encode函数的处理速度快,并且在代码维护方面可能会带来额外的工作量。此外,对于一些特殊字符...

    PHP中常用的转义函数

    2. Stripslashes 函数:它是Addslashes的反向操作,用于去除字符串中添加的转义字符。 3. HtmlSpecialChars 函数:这个函数用于转换字符串中的特殊HTML字符到HTML实体。它主要针对字符(&)、单引号(')、双引号(")、...

    ThinkPHP提交表单时默认自动转义的解决方法

    如果服务器开启了转义,可以在公共文件中加入处理代码,以去除由ThinkPHP和服务器双重转义的反斜杠。可以通过检测 `get_magic_quotes_gpc()` 函数返回值来判断,如果返回 true,则使用自定义函数 `stripslashes_...

    php下防止单引号,双引号在接受页面转义的设置方法

    在PHP编程中,单引号(')和双引号(")的转义问题...去除转义并接收原始输入可能会使应用程序面临SQL注入等安全风险,因此在数据用于数据库查询或其他敏感操作前,务必对其进行适当的过滤和验证,防止恶意代码的注入。

    php中html_entity_decode实现HTML实体转义

    最近遇到一个问题,数据中包含中文引号,结果被转义存储到数据库,取数据的时候用了htmlspecialchars_decode把实体转义回去,结果发现并没有生效,看了一下htmlspecialchars_decode只支持5个指定的实体转换,其他的...

    【JavaScript源代码】php去掉json反斜杠的实例讲解.docx

    这里的`$_POST['json']`是接收到的JSON字符串,`stripslashes()`函数将其中的反斜杠去掉,恢复原始的JSON格式。 接下来,为了将去除了反斜杠的字符串解析成PHP能理解的数据结构,我们需要使用`json_decode()`函数。...

    支付宝支付去除lotusphp框架

    去除框架后,需要自行加强代码的安全性,比如使用预编译语句防止SQL注入,对用户输入进行过滤或转义。 5. **性能优化**:不再受框架限制,可以根据业务需求进行性能优化,如使用CURL进行HTTP请求,或者利用异步处理...

    php防注入,表单提交值转义的实现详解

    在处理完数据后,当你需要将转义后的值在页面上显示时,可以使用`stripslashes()`函数去除不必要的反斜杠。这个函数会移除由`addslashes()`添加的反斜杠,使得输出的文本保持原样: ```php $display_text = ...

    PHP中输出转义JavaScript代码的实现代码

    函数的第一步使用trim()函数去除字符串两端的空白字符。这对于避免将多余的空格引入到JavaScript代码中是有必要的。 接下来,函数中出现了多次使用str_replace()函数的操作,这些都是为了替换掉JavaScript代码中...

    精通PHP+MySQL应用开发

    本章节重点介绍如何使用PHP进行字符串的操作,包括去除空格和其他特殊符号、加入和去除反斜杠以及生成HTML元素。 ##### 1.1 去除空格和其他特殊符号 在实际应用中,经常需要清理字符串中的空格或其他无意义的符号...

    比较好用的PHP防注入漏洞

    去除转义字符函数`stripslashes_array` - **功能概述**:该函数用于递归地遍历数组并去除其中字符串的转义字符。 - **处理逻辑**: - 如果是数组,则递归调用`stripslashes_array`函数; - 如果是字符串,则使用...

    ThinkPHP3.1修改支持php7

    3. **魔术引号**:PHP7中去掉了魔术引号功能,因此,如果ThinkPHP3.1的代码依赖于此功能,需要手动处理输入字符串的转义。 4. **创建匿名函数**:`create_function()`在PHP7中被废弃,应使用`Closure`类替代。例如...

Global site tag (gtag.js) - Google Analytics