文章目录[隐藏]
if (strtoupper(CHARSET) == ‘GBK’ && !empty($key)){
if (is_array($key)){
$result = var_export($key, true);//变为字符串
$result = iconv(‘UTF-8′,’GBK’,$result);
eval(“\$result = $result;”);//转换回数组
}else {
$result = iconv(‘UTF-8′,’GBK’,$key);
}
}
return $result;
这句中的 CHARSET是啥意思,不可思议,是实随便一个字符串试探吗
还有eval(“\$result = $result;”);为啥能转成数组呢
回复讨论(解决方案)
CHARSET 是个常量
eval() 函数把字符串按照 PHP 代码来计算。去看看手册中该函数的介绍就明白了。
CHARSET 是个常量,可以找找 /本2文来源[email protected]搞@^&代*@码2网搞gaodaima代码define(‘CHARSET’, xxx); 定义。
eval就是把字符串转为代码执行。