当前位置:Gxlcms > PHP教程 > 下面这句话何解

下面这句话何解

时间:2021-07-01 10:21:17 帮助过:26人阅读

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 是个常量,可以找找 define('CHARSET', xxx); 定义。
eval就是把字符串转为代码执行。

人气教程排行