php中使用addslashes函数报错问题的解决方法
大家看下面的代码,能发现错误在哪里吗?
<?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?”,”‘”);这样写就可以正常输出了。
推荐阅读
-
html5的input的required使用中遇到的问题及解决方法
-
php中json_encode处理gbk与gb2312中文乱码问题的解决方法
-
PHP中Date()时间日期函数的使用方法小结
-
vuex2中使用mapGetters/mapActions报错的解决方法
-
web.py在SAE中的Session问题解决方法(使用mysql存储)
-
Mysql5.7中使用group concat函数数据被截断的问题完美解决方法
-
PHP中usort在值相同时改变原始位置问题的解决方法
-
php中mail函数发送邮件失败的解决方法
-
WordPress中调试缩略图的相关PHP函数使用解析
-
PHP中使用addslashes函数转义的安全性原理分析