function Root_GP(&$array)
{
while(list($key,$var) = each($array))
{
if((strtoupper($key) != $key || ''.intval($key) == "$key") && $key != 'argc' && $key != 'argv')
{
if(is_string($var)) $array[$key] = stripslashes($var);
if(is_array($var)) $array[$key] = Root_GP($var);
}
}
return $array;
}
<?php
function Root_GP(&$array){
while(list($key,$var) = each($array)){//取array数组的一个元素和这个元素的键,形成一个数组,并将这个数组分解到变量$key和$val,也就是取得array数组的键和值
if((strtoupper($key) != $key || ''.intval($key) == "$key") && $key != 'argc' && $key != 'argv'){
//多个判断,一是判断$key 必须是非全部大写的或者键是数字的 二是判断,$key不能等于argc 也不能等于argv ,两者成立这执行下边的语句
if(is_string($var)) $array[$key] = stripslashes($var);//如果数组值是字符串,则删除由 addslashes() 函数添加的反斜杠,并写回原数组
if(is_array($var)) $array[$key] = Root_GP($var); //如果数组值是数组,则递归调用该函数,对数组值数组进行处理
}
}
return $array;
}
?>
该函数的意义如楼上所说
不过这写法麻烦咯,可以用foreach
while(list($key,$var) = each($array)){// 改为
foreach($array as $key=>$var){
function Root_GP(&$array){
while(list($key,$var) = each($array)){//取array数组的一个元素和这个元素的键,形成一个数组,并将这个数组分解到变量$key和$val,也就是取得array数组的键和值
if((strtoupper($key) != $key || ''.intval($key) == "$key") && $key != 'argc' && $key != 'argv'){
//多个判断,一是判断$key 必须是非全部大写的或者键是数字的 二是判断,$key不能等于argc 也不能等于argv ,两者成立这执行下边的语句
if(is_string($var)) $array[$key] = stripslashes($var);//如果数组值是字符串,则删除由 addslashes() 函数添加的反斜杠,并写回原数组
if(is_array($var)) $array[$key] = Root_GP($var); //如果数组值是数组,则递归调用该函数,对数组值数组进行处理
}
}
return $array;
}
?>
该函数的意义如楼上所说
不过这写法麻烦咯,可以用foreach
while(list($key,$var) = each($array)){// 改为
foreach($array as $key=>$var){
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-08-19
这个函数的意义是:对一个数组递归应用stripslashes()
1、strtoupper($key) != $key || ''.intval($key) == "$key"
数组的键不能是全大写的,或者下标是数字
2、$key != 'argc' && $key != 'argv'
排除两个特殊元素。它们是命令行参数个数和命令行参数数组
3、if(is_string($var)) $array[$key] = stripslashes($var);
当变量为字符串时,去除转义斜杠
4、if(is_array($var)) $array[$key] = Root_GP($var);
当变量是数组时,递归调用本函数
望采纳!本回答被提问者和网友采纳
1、strtoupper($key) != $key || ''.intval($key) == "$key"
数组的键不能是全大写的,或者下标是数字
2、$key != 'argc' && $key != 'argv'
排除两个特殊元素。它们是命令行参数个数和命令行参数数组
3、if(is_string($var)) $array[$key] = stripslashes($var);
当变量为字符串时,去除转义斜杠
4、if(is_array($var)) $array[$key] = Root_GP($var);
当变量是数组时,递归调用本函数
望采纳!本回答被提问者和网友采纳
第2个回答 2013-08-19
你一句一句的在我耳边