php中使用addslashes函数报错问题的解决方法

yipeiwu_com5年前PHP代码库

大家看下面的代码,能发现错误在哪里吗?

复制代码 代码如下:

<?php
echo function_exists('addcslashes');//检测是否存在该函数
echo get_magic_quotes_gpc().'<br/>';//检测是否开启自动转义
echo PHP_VERSION.'<br/>';//php版本信息
echo addcslashes("Who's John Adams?");
echo '<br/>';
$str = "Who's John Adams?";
echo addslashes($str);
?>

输出结果是否一样呢?
10
5.3.6
Warning: addcslashes() expects exactly 2 parameters, 1 given in /data/bookuu/test/class.php on line 50
Who\'s John Adams?

一个报错,另外一个正常输出。为什么呢?
addslashes 和addcslashes不是同一个函数,发现没有,只有一个字符的区别。
但是两个函数的功能都是一样的—转义字符串。
区别是啥?
addslashes只有一个参数-字符串
addcslashes需要两个参数,字符串,分隔符.
echo addcslashes("Who's John Adams?","'");这样写就可以正常输出了。

希望能帮助大家理解addslashes的用法。

addslashes的错误

坑爹啊,给大家看一个代码,看看大家能发现错误不?

复制代码 代码如下:

echo function_exists('addcslashes');//检测是否存在该函数
echo get_magic_quotes_gpc().'<br/>';//检测是否开启自动转义
echo PHP_VERSION.'<br/>';//php版本信息
echo addcslashes("Who's John Adams?");
echo '<br/>';
$str = "Who's John Adams?";
echo addslashes($str);

大家猜猜输出结果是不是一样的???A:一样 B:还是一样
我也是认为一样的但是,其实坑爹了!
10
5.3.6

Warning: addcslashes() expects exactly 2 parameters, 1 given in /data/bookuu/test/class.php on line 50

Who's John Adams?

一个报错,另外一个正常输出。

为啥?
addslashes 和addcslashes不是同一个函数,发现没有,只有一个字符的区别。

但是两个函数的功能都是一样的—转义字符串。
区别是啥?
addslashes只有一个参数-字符串
addcslashes需要两个参数,字符串,分隔符.
echo addcslashes(“Who's John Adams?”,”‘”);这样写就可以正常输出了。

相关文章

IIS6.0中配置php服务全过程解析

虽然 LAMP 组合很不错,但是如果想要架设一台同时支持 PHP、ASP、ASP.NET、JSP、Perl 的 Web 虚拟主机服务器,还是用 Windows 2003 的 IIS 6...

11个PHP 分页脚本推荐

11个PHP 分页脚本推荐

    Web开发中,分页设计必不可少。本文列举了10个PHP分页脚本,希望对你的web开发会有帮助。   列表中大部分,提供演示和代码下载。   1) My Paginat...

PHP正则表达式笔记与实例详解

PHP正则表达式笔记与实例详解

本文实例讲述了PHP正则表达式笔记与实例。分享给大家供大家参考,具体如下: 这里主要介绍如何在PHP使用正则表达式,并附带几个实例. 这两天工作用到了正则表达式,发现自己已经忘记的差不多...

php下网站防IP攻击代码,超级实用

今天我开发了下面的代码,算是大功初成,一天拦截了15个IP,服务器负载正常。 复制代码 代码如下: <?php //查询禁止IP $ip =$_SERVER['REMOTE_ADD...

php中++i 与 i++ 的区别

1、++i 的用法(以 a=++i ,i=2 为例) 先将 i 值加 1 (也就是 i=i+1 ),然后赋给变量 a (也就是 a=i ), 则最终 a 值等于 3 , i 值等于 3...