请问下面代码的每一句是什么意思呢?有点看不懂。。
PHP code:
function charset_db(){
global $charset;
if($this->version = "4.1"){
return true;
}
//根据定义,指定不同的语言集
if(defined('CHARSET_DB') && CHARSET_DB == ' ' && in_array(strtolower($charset) , array('gb2312' , 'gbk' , 'big5' , 'utf-8'))){
$dbcharset = str_replace('-' , ' ' , $charset);
}else{
$dbcharset = CHARSET_DB;
}
if($dbcharset){
mysql_query("SET NAMES '$dbcharset' ");
}
}
先获取全局变量 $charset ,应该是系统的字符集
如果常数 CHARSET_DB 已定义,且值为 ' ',且 $charset 值为 gb2312,gbk,big5 utf-8 中的其中一个
就用 str_replace() 把 $charset 中 '-' 号转化成 ' ',赋值给$dbcharset
否则 把常数 CHARSET_DB 赋值给 $dbcharset
如果 $dbcharset 已赋值
通知数据库字符集为 $dbcharset(防止乱码)