递归处理提交数据
<?php /** * 递归处理提交数据 * * @param string|array $data 提交数据 * @return string|array */ define("PHP_MAGIC_GPC", get_magic_quotes_gpc()); function rAddSlashes(&$data) { // 这里用到了之前定义的常量 if (!PHP_MAGIC_GPC) { return is_array($data) ? array_map('rAddSlashes', $data) : addslashes($data); } else { Return $data; } }
/*
看明白了没有。没有看明白的话我就讲讲,看明白了也不妨向下看看。
一般说来,对于提交的数据都是一维数组,但是也不排除多维的情况,比如多选项,对于cookie就有更多的可能是多维了,因此我们不可能把任何的提交都foreach来降维进行处理,这里我们可以用递归来进行这项工作。array_map函数在这里可是居功至伟,用它回调rAddSlashes本身来完成递归,简洁明快。此函数一次性将数据中的非凡字符进行了转义,不管其有多少维。我们可以这样来用它
CODE:
$post = rAddSlashes($_POST);
*/
永久链接:http://www.phprm.com/frame/fcb79bd475e1b96f1a1218a870374ed9.html
转载随意!带上文章地址吧。