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