php addslashes 利用递归实现使用反斜线引用字符串

yipeiwu_com6年前PHP代码库

实现代码:

复制代码 代码如下:

<?php
function addslashes_deep($value)
{
//史上最经典的递归,一行搞定
return is_array($value) ? array_map('addslashes_deep', $value) : addslashes($value);
}

//测试数据
$_POST['STR'] = "'fanglor ' is \ a  boy  >'";
$_GET['STR1'] = 'fanglor " is \ a  boy  >';

echo '当前get_magic_quotes_gpc为  '.get_magic_quotes_gpc();
echo "<br/>";

//判断当前是否开启get_magic_quotes_gpc
if (!get_magic_quotes_gpc()){
$_POST = addslashes_deep($_POST);
$_GET = addslashes_deep($_GET);
$_COOKIE = addslashes_deep($_COOKIE);
}

//打印结果
var_dump ($_POST);
echo "<br/>";
var_dump ($_GET);

?>


打印结果:
当前get_magic_quotes_gpc为 0
array(1) { ["STR"]=> string(30) "\'fanglor \' is \\ a boy >\'" }
array(1) { ["STR1"]=> string(26) "fanglor \" is \\ a boy >" }

相关文章

PHP实现获取域名的方法小结

本文实例总结了PHP实现获取域名的方法。分享给大家供大家参考。具体实现方法如下: 方法一(用 系统变量)    复制代码 代码如下://缺点不使用传递过来的地址和不支持系统变量的主机  ...

PHP基于rabbitmq操作类的生产者和消费者功能示例

本文实例讲述了PHP基于rabbitmq操作类的生产者和消费者功能。分享给大家供大家参考,具体如下: 注意事项: 1、accept.php消费者代码需要在命令行执行 2、'usernam...

php小技巧 把数组的键和值交换形成了新的数组,查找值取得键

复制代码 代码如下: $cityname = array_flip($city_DB[name]); //把数组的键和值交换形成了新的数组 $city_name = array_sear...

php中Redis的应用--消息传递

php中Redis的应用--消息传递

阅读目录 1、摘要 2、实现方法 3、一对一消息传递 4、多对多消息传递 1、摘要 消息传递这一应用广泛存在于各个网站中,这个功能也是一个网站必不可少的。常见的消息传递应用有,新浪微博中...

PHP实现链式操作的三种方法详解

本文实例讲述了PHP实现链式操作的三种方法。分享给大家供大家参考,具体如下: 在php中有很多字符串函数,例如要先过滤字符串收尾的空格,再求出其长度,一般的写法是: strlen(t...