php函数之get_magic_quotes_gpc

本文介绍了PHP编程中的两个重要函数:string addslashes和int get_magic_quotes_gpc。通过实例演示了如何避免字符串双重转义的问题,强调了正确使用这些函数来确保数据安全的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天看书中做留言板,看到了这么两个函数
string addslashes ( string str )
对于这个函数大家可以查手册,上面是中文,说的很详细的.
自己也就不多说什么了,主要介绍一下下面这个函数.
int get_magic_quotes_gpc ( void )

手册中string addslashes ( string str )介绍的时候有这样一句话说明了get_magic_quotes_gpc的用法以及作用
默认情况下,PHP 指令 magic_quotes_gpc 为 on,它主要是对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。

其实这个函数就是判断有PHP有没有自动调用addslashes 这个函数,
下面是例子,其实也是从手册上弄下来的,传过来就为自己看着方便,因为自己记性不好..

见笑:

<html>
    <!--以POST方式传过去一个带有单引号的字符串 -->
    <body>
          <form action="first.php" method="post">
               <input type="text" name="lastname" value="Simao'pig">
               <input type="submit" value="提交">
          </form>
    </body>   
   
</html>
<?php
echo get_magic_quotes_gpc();         // 很不好意思,我的这个是0
echo $_POST['lastname'];             // Simao'pig
echo addslashes($_POST['lastname']); // Simao/'pig

if (!get_magic_quotes_gpc()) {
    $lastname = addslashes($_POST['lastname']);
} else {
    $lastname = $_POST['lastname'];
}

echo $lastname; // Simao/'pig
$sql = "INSERT INTO lastnames (lastname) VALUES ('$lastname')";
?>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值