找到乱码的原因了,是代码高亮显示插件【 SyntaxHighlighter 】的问题,csdn也是用的这个插件。
我今天看了一下这个插件,问题不少。
乱码是由于某些符号解析错误引起的,例如"$_", "<="等。
我举一个实际的例子你们就懂了,下面代码你把它copy下来:
$_gender = ($data['gender']) ? '男' : '女';
//电子邮件地址
$_email = $data['email'];
//主页
$_homepage = $data['homepage'];
//头像
$_face = $data['face'];
//OICQ号码
$_oicq = $data['oicq'];
//IP地址
$_ip = $data['ip'];
这代码够简单吧?但导入csdn编辑器代码插件里就会乱码(解析出错)。
你可以自己测试一下:
新建一篇文章发表,把上面那段代码复制到专门显示代码的编辑框中,随便你选择什么编程语言。发表然后看看效果。效果如下:
{1}gender = ($data['gender']) ? '男' : '女'; //电子邮件地址
{1}email = $data['email']; //主页
{1}homepage = $data['homepage']; //头像
{1}face = $data['face']; //OICQ号码
{1}oicq = $data['oicq']; //IP地址
{1}ip = $data['ip'];
为什么会乱码?
倘若你把代码中的$_符号去掉,就不会乱码了。而且,根据我测试的情况来看,不只是$_会导致乱码,还有其他问题。