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?”,”‘”);这样写就可以正常输出了。

相关文章

利用PHP函数计算中英文字符串长度的方法

本文实例讲述了利用PHP函数计算中英文字符串长度的方法。分享给大家供大家参考。具体实现方法如下: 一般来说大家知道英文字符占一个字节,而中文字符gbk占两个字符,utf8占三个字符,很多...

PHP实现时间比较和时间差计算的方法示例

本文实例讲述了PHP实现时间比较和时间差计算的方法。分享给大家供大家参考,具体如下: 示例1: <?php //PHP时间比较和时间差计算: //(1).比较两个绝对时...

php实现分页显示

所谓分页显示,也就是将数据库中的结果集人为的分成一段一段的来显示,这里需要两个初始的参数: 每页多少条记录($PageSize)? 当前是第几页($CurrentPageID)? 现在只...

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

本文实例讲述了php字符串截取函数mb_substr用法。分享给大家供大家参考,具体如下: string mb_substr ( string $str , int $start [,...

PHP file_exists问题杂谈

PHP file_exists问题杂谈

问题   公司有个框架是基于smarty写的,我负责php的升级,维护人员把新环境布上来之后,测试人员找我提出经常报错(错误:提示找不到文件的)。   我追踪了一下代码,原来是smart...