php addslashes 利用递归实现使用反斜线引用字符串
实现代码:
<?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 >" }
相关文章
set_include_path在win和linux下的区别
2008-01-01PHP中的闭包function() use() {}使用场景和技巧
由于存在函数内部不能访问全局作用的,所以就需要一种可以引入上一级作用域的语法结构,可以通过use使用函数声明时所在作用域的变量的值。php的闭包可能不常用,但是在某些场合之下还是可以考虑用php的闭包来实现某些功能的。2022-12-12
最新评论