PHP addslashes()函数的具体应用解析_PHP教程

WBOY
發布: 2016-07-15 13:31:00
原創
888 人瀏覽過

我们通过对定义和用法
addslashes() 函数在指定的预定义字符前添加反斜杠。

这些预定义字符是:

单引号 (')
双引号 (")
反斜杠 ()
NULL

语法
c

参数 描述
string 必需。规定要检查的字符串。

提示和注释
提示:该函数可用于为存储在数据库中的字符串以及数据库查询语句准备合适的字符串。

注释:默认情况下,PHP 指令 magic_quotes_gpc 为 on,对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。

例子

在本例中,我们要向字符串中的预定义添加反斜杠:

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><span> ?php  </span></span></span></li>
<li>
<span>$</span><span class="attribute">str</span><span> = </span><span class="attribute-value">"Who's John Adams?"</span><span>;  </span>
</li>
<li class="alt"><span>echo $str . " This is not safe in a database query.</span></li>
<li class="alt"><span class="tag"><span> </span><span class="tag-name">br</span><span> </span><span class="tag">/></span><span>";  </span></span></li>
<li><span>echo addslashes($str) . " This is safe in a database query.";  </span></li>
<li class="alt">
<span class="tag">?></span><span> </span>
</li>
</ol>
登入後複製

输出:

Who's John Adams? This is not safe in a database query.
Who's John Adams? This is safe in a database query.

一个使用 addslashes() 的例子是当你要往数据库中输入数据时。例如,将名字 O'reilly 插入到数据库中,这就需要对其进行转义。大多数据库使用 作为转义符:O'reilly。这样可以将数据放入数据库中,而不会插入额外的 。当 PHP 指令 magic_quotes_sybase 被设置成 on 时,意味着插入 ' 时将使用 ' 进行转义。

默认情况下,PHP 指令 magic_quotes_gpc 为 on,它主要是对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/446258.htmlTechArticle我们通过对 定义和用法 addslashes() 函数在指定的预定义字符前添加反斜杠。 这些预定义字符是: 单引号 (') 双引号 (") 反斜杠 () NULL 语法...
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板