Linux php 中文乱码解决方法linux操作系统
“白鹭”通过精心收集,向本站投稿了10篇Linux php 中文乱码解决方法linux操作系统,下面是小编为大家推荐的Linux php 中文乱码解决方法linux操作系统,欢迎大家分享。
篇1:Linux php 中文乱码解决方法linux操作系统
php 中文乱码导致的原因有很多如果是linux中可能是字符编码设置问题,如果是页面编码乱码我们可能是页面编码问题,解决办法也很简单,下面我来总结一下,
Linux php 中文乱码
在ubuntu下php网页输出乱码,在不涉及数据库编码的情况下:
修改“/etc/php5/apache2/php.ini”将
代码如下复制代码default_charset = “iso-8859-1”
修改为
default_charset = “utf-8”
然后重启apache:
代码如下复制代码sudo /etc/init.d/apache2 restart
php mysql中文乱码
一般来说出于编码兼容考虑大多的页面都将页面字符集定义为utf-8
代码如下复制代码这时候要正常显示中文需要转化一下编码方式,比如
代码如下复制代码echo iconv(“GB2312”,“UTF-8”,'中文');
就不会乱码了
还有其他方法,比如
在php的echo前面加入
代码如下复制代码header(“Content-Type:text/html;charset=gb2312”);
当然简体中文页面也可以干脆地,
把
代码如下复制代码中的UTF-8改成gb2312
代码如下复制代码mysql_query('SET NAMES UTF8');
接下来的就是查出数据或者修改,增加咯
?>
篇2:Linux下MySQL 5.5中文乱码解决方法linux操作系统
根据我的经验中文乱码一般是编码问题,我们只要在linux中把mysql的字符编码进行修改即可了,我们先把修改字符集编码为UTF8试一下,
分析问题排查 登录MySQL查看用SHOW VARIABLES LIKE ‘character%’;
character_set_database和character_set_server的默认字符集还是latin1。
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
解决方法
修改mysql的my.cnf文件中的字符集键值
1、在[client]字段里加入default-character-set=utf8,如下:
代码如下复制代码[client]
port = 3306
socket = /var/lib/mysql/mysql.sock
default-character-set=utf8
2、在[mysqld]字段里加入character-set-server=utf8,如下:
代码如下复制代码[mysqld]
port = 3306
socket = /var/lib/mysql/mysql.sock
character-set-server=utf8
3、在[mysql]字段里加入default-character-set=utf8,如下:
代码如下复制代码[mysql]
no-auto-rehash
default-character-set=utf8
修改完成后,service mysql restart重启mysql服务就生效
解决办法二
修改MySql服务器各个数据库的字符集
如果在设置服务器字符集之前,存在了数据库,
需要更改数据库的字符集:
代码如下复制代码use datatable_name;
alter database character set gbk;
在程序查询写入时操作
例子1是通过php直接插入数据:
a.php
代码如下复制代码mysql_connect('localhost','user','password');
mysql_select_db('my_db');
//请注意,这步很关键,如果没有这步,所有的数据读写都会不正确的
//它的作用是设置本次数据库联接过程中,数据传输的默认字符集
mysql_query(“set names utf8;”);
//必须将gb2312(本地编码)转换成utf-8,也可以使用iconv函数
mysql_query(mb_convet_encoding(“insert into my_table values('测试');”, “utf-8”, “gb2312”));
?>
例子是通过页面提交插入数据2:
b.php
代码如下复制代码//输出本页编码为utf-8
header(“content-type:text/html; charset=utf-8”);
mysql_connect('localhost','user','password');
mysql_select_db('my_db');
if(isset($_REQUEST['name'))
{
//由于上面已经指定本页字符集为utf-8了,因此无需转换编码
mysql_query(sprintf(“insert into my_table values('%s');”, $_REQUEST['name']));
}
$q = mysql_query(“select * from my_table”);
while($r = mysql_fetch_row($q))
{
print_r($r);
}
?>
篇3:Win7中文显示乱码的解决方法
上次有一个软件里的读取数据的中文内容都是乱码,也没注意以为是软件问题,最近发现很多软件的部分中文都有显示乱码的现象,网上发现都是英文版系统出现这种问题,但是自己的是中文版系统。遂尝试在语音设置里把所有语言选项改成了香港,就好了。昨天Windows Update后,发现很多软件的中文又显示成方块了,遂又将非Unicode语言调成了香港,好了,再换回中国,没有乱码了。想来应该是系统更新之后,Unicode语言选项被其他参数覆盖,导致使用非Unicode字符编码的程序显示乱码,只要重新切换下Unicode语言选项就能解决了,
修复步骤图解:
1.点击开始菜单图标并单击打开控制面板。
2.在区域和语言设置-管理中,选择更改显示语言。 3.选择管理标签,并点击更改系统区域设置。 4.将非Unicode语言更改为简体中文即可可以正常显示了。篇4:ubuntu 命令行中文乱码问题的解决方法
首先...我说的命令行是指Ctrl+Alt+F1~F6开启的纯命令行模式 不是在X Window里打开的终端...
如果你遇到的是终端里无法显示中文这篇文里的方法基本对你没用....可以跳过了~
言归正传 纯命令行中中文无法显示
导致的原因是安装过程中选择了中文,所以系统默认配置也设置成了中文,改成英文即可,
解决方法1:学好英文..把环境变量设置为英文....(别抽我..)
修改/etc/default/locale
sudo vim /etc/default/locale1
修改默认的
LANG=zh_CN.UTF-8
LANGUAGE=zh_CN:zh
为:
LANG=“en_US.UTF-8”
LANGUAGE=“en_US:en”
存盘退出
然后:
sudo reboot
再然后
env 或者 locale 查看修改后的结果 就可以了...
解决方法2:这才是我想说的... 安装个zhcon就可以了...
终端或者命令行里输入
sudo apt-get install zhcon
等安装完即可~
运行的时候记得要加载vgz驱动和utf8支持 否则会黑屏...
并且只能在纯命令行里运行 在终端运行会出错
所以你的命令应该是zhcon --utf8 --drv=vga
如果嫌每次都要输入这么多太麻烦可以在~/.bashrc里面加一个别名
sudo vim ~/.bashrc
打开后在里面加入一行
alias zhcon=‘zhcon --utf8 --drv=vga‘
保存退出
这样每次进入命令行后直接运行zhcon即可 不用担 屏问题
zhcon中支持中文显示也支持中文输入法 由于热键冲突问题暂时我只知道Ctrl+ space切换到全拼输入法是
可以用的 多多少少解决了点中文目录/文件名的问题了
篇5:解决centos5.5 中文乱码方法总结linux操作系统
今天自己在使用centos5时发现中文乱码了,后来找了一些解决解决centos5.5 中文乱码方法,下面我总结一下这些解决中文乱码的问题,各位同学可参考,
今天用vmware安装centos 5.5 一路跑完,发现中文全是小方框,特以记录:
1.先下载中文字体包
1 #yum install fonts-chinese.noarch
2 # yum install fonts-ISO8859-2.noarch
2.修改/etc/sysconfig/i18n文件
#LANG=“en_US.UTF-8”
为
LANG=“zh_CN.GB18030”
重启后还是显示乱码,很是郁闷,后来发现是缺少中文字体(我们可百度去下载一个字体)
网上有的说七步,其实只要两步:
代码如下复制代码tar zxvf wqy-bitmapsong-bdf-1.0.0-RC1.tar.gzsudomkdir - p /usr/share/fonts/wenquanyi/
sudo mv wqy-bitmapsong /usr/share/fonts/wenquanyi
然后在/etc/fonts/fonts.conf的前添加:
代码如下复制代码最后别忘了 执行 fc-cache -fv 更新缓存。
但我安装了字体还是显示乱码啊,接着搜索,网站有人分析CentOs 5.5后无法显中文(中文乱码) 原因如下
症状:
在使用CentOS 系统时,安装的时候可能你会遇到英文的CentOS系统,在这中情况下安装CentOS系统时是默认安装(即英文)。安装完毕后,上网出现的却是中文乱码。
解决方法:
到CentOs资源网站上去找fonts-chinese-3.02-12.el5.noarch.rpm(中文字体包) 和fonts-ISO8859-2-75dpi-1.0-17.1.noarch.rpm (字体显示包)
以下是5.5版本的包地址(我安装的是5.5 i386的)
代码如下复制代码ftp://ftp.muug.mb.ca/mirror/centos/5.5/os/i386/CentOS/fonts-chinese-3.02-12.el5.noarch.rpm
ftp://ftp.muug.mb.ca/mirror/centos/5.5/os/i386/CentOS/fonts-ISO8859-2-75dpi-1.0-17.1.noarch.rpm
若你的是其它版本的,请 ftp://ftp.muug.mb.ca/mirror/centos/这下面找吧。
下载后,在命令行安装:
代码如下复制代码#rpm -ivh XXXX ( XXXX 代表上面那两个包的全名, rpm 不会用的就去google吧)CentOS系统安装完成后,重新启动即可。
终端、 gedit 显示乱码
代码如下复制代码#vi /etc/sysconfig/i18n
将LANG=“en_US.UTF-8”
SYSFONT=“latarcyrheb-sun16”
修改原内容为
LANG=“zh_CN.GB18030”
LANGUAGE=“zh_CN.GB18030:zh_CN.GB2312:zh_CN”
SUPPORTED=“zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en”
SYSFONT=“lat0-sun16”
用 yum 安装中文字体
代码如下复制代码#yum install fonts-chinese.noarchsystem -> logout 注销
重新登录CentOS系统时,你会发现,所有界面已从英文变成中文,
在终端输入 date 命令测试
#date
在 ssh , telnet 终端中文显示乱码解决办法
代码如下复制代码#vi /etc/sysconfig/i18n将原内容 LANG=“en_US.UTF-8”
SYSFONT=“latarcyrheb-sun16”
修改为
LANG=“zh_CN.GB18030”
LANGUAGE=“zh_CN.GB18030:zh_CN.GB2312:zh_CN”
SUPPORTED=“zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en”
SYSFONT=“lat0-sun16”
用 yum 安装中文字体
#yum install fonts-chinese.noarch
断开 ssh ,重新连
在终端输入 date 命令测试
#date
顺便介绍一下Linux中文乱码
方法一修改/root/.bash_profile文件,增加
代码如下复制代码export LANG=zh_CN.GB18030对于其他用户,也必须相应修改该文件使用该方法时putty能显示中文,但桌面系统是英文,而且所有的网页中文显示还是乱码
方法二:
引用:
修改/etc/sysconfig/i18n文件
代码如下复制代码#LANG=“en_US.UTF-8”
#SUPPORTED=“en_US.UTF-8:en_US:en”
#SYSFONT=“latarcyrheb-sun16”
改为
LANG=“zh_CN.GB18030”
LANGUAGE=“zh_CN.GB18030:zh_CN.GB2312:zh_CN”
SUPPORTED=“zh_CN.GB18030:zh_CN:zh”
SYSFONT=“lat0-sun16”
SYSFONTACM=“8859-15”
篇6:windows中QT5中文乱码解决办法Windows服务器操作系统
初学QT开发,遇到了中文乱码的问题,查了一下资料,只需要在main.c中增加两行代码即可,下面我把代码贴出来希望对大家会有所帮助,
代码如下复制代码#include “myapp.h”
#include
#include
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QTextCodec::setCodecForLocale(QTextCodec::codecForName(“gbk”)); //指定GBK编码
MyApp w;
w.show;
return a.exec();
}
篇7:linux下mysql中文乱码(中文问号)解决办法linux操作系统
今天发现我mysql插入中文时老出现????号了,但保存英文是没有问题的,下面我来给各位同学介绍一下linux下mysql中文乱码解决方法,
linux下则需要修改/etc/my.cnf,在[mysqld]下加入default-character-set = utf8,[client]下加入default-character-set = utf8,在[mysql]字段里加入default-character-set=utf8
实现:
1.查看原编码
代码如下复制代码mysql> show variables like 'character%'; //执行编码显示,可以看到默认是latin1+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
2.修改/etc/my.cnf,分别在[client],[mysqld],[mysql]字段里添加default-character-set=utf8。注意[mysqld]字段与[mysql]字段是有区别的。这点在网上没人反馈过。
# vim /etc/my.cnf //添加default-character-set=utf8
代码如下复制代码[client]
port = 3306
socket = /var/lib/mysql/mysql.sock
default-character-set=utf8
[mysqld]
port = 3306
socket = /var/lib/mysql/mysql.sock
character-set-server=utf8
[mysql]
no-auto-rehash
default-character-set=utf8修改完成后,service mysql restart重启mysql服务器,使用SHOW VARIABLES LIKE ‘character%’;查看,发现数据库编码全已改成utf8
代码如下复制代码mysql> show variables like 'character%';+--------------------------+----------------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql/share/mysql/charsets/ |
+--------------------------+----------------------------------------+
3.如果上面的都修改了还乱码,那剩下问题就一定在connection连接层上,
解决方法是在发送查询前执行一下下面这句(直接写在SQL文件的最前面):
代码如下复制代码SET NAMES ‘utf8′;
它相当于以下三指令:
代码如下复制代码SET character_set_client = utf8;SET character_set_results = utf8;
SET character_set_connection = utf8;
附录:
朋友的一个站点转到我这边。导入mysql时,mysql还是latin的编码,因此,虽然按上面的步骤,在/etc/my.cnf文件中[client],[mysqld],[mysql]字段里添加default-character-set=utf8,但站点部分中文是乱码。在将mysql编辑改为utf8再重新导入数据库后,就正常了。
估计是mysql是latin编码是,导入数据时,因为mysql无法识别,直接将数据保存成了???这种乱码的形式了
篇8:Python BeautifulSoup中文乱码问题的2种解决方法
最近更 新
python中使用enumerate函数遍历元素实例
Python学习笔记(二)基础语法
在Python中使用异步Socket编程性能测试
重命名批处理python脚本
python批量下载图片的三种方法
python ip正则式
Python 字符串操作实现代码(截取/替换/查
Python Mysql自动备份脚本
python实现图片批量剪切示例
pip 错误unused-command-line-argument-h
热 点 排 行
Python入门教程 超详细1小时学会
python 中文乱码问题深入分析
比较详细Python正则表达式操作指
Python字符串的encode与decode研
Python open读写文件实现脚本
Python enumerate遍历数组示例应
Python 深入理解yield
Python+Django在windows下的开发
python 文件和路径操作函数小结
python 字符串split的用法分享
篇9:AutoCAD字体乱码解决方法
在转化ACAD图纸的过程中,经常出现字体不匹配,出现乱码等问题,现将部分问题的解决方法分享,
1.ACAD的低版本文件,如R13(及R13以下)的DWG文件,用R14(及R14以上)版本打开时,即使正确地选择了汉字字形文件,还是会出现汉字乱码,原因是R14(及R14以上)与R13(及R13以下)采用的代码页不同。解决办法:可到AutoDesk公司主页下载代码页转换工具wnewcp工具进行转换,如原图为简体中文,选择转换为GB2312或ANSI936均可。
2.在一个块里写字,如在标题栏里写字,一些内容太长造成文字出界,在acad以前的版本里无法调整块里面的文字属性(即无法调整块中块),只能采用炸开的办法再调整文字属性。解决办法:升级到acad,它的块里面可以更改下一层块的属性。
3.当数字与文字混合输入时,高度不一,通常来说数字比文字的高度大一点。解决办法:我通常数字用用style指令指定数字用GBENOR字体(ACAD自带,字高比其它字体矮),文字用HZTXT字体(如没有HZTXT字体,可根据感觉另选字体代替),
4.打开其他公司的CAD图纸,提示无图纸中的某字体,但用其他字体替代后,出现乱码。解决办法:新建一文档,将该CAD图纸作为一个块插入,乱码将会消失(但字体会与原图有出入,若需100%准确,则需要对方通过匹配的字体)。
5.用中文版的PROE中Pro/Drawing出好的工程图,当你把它转成DWG后用AutoCAD打开后,你无论在ACAD中如何设中文字体,把它炸开(因文字由PROE转DWG时全成图块了),都无法正常显示PROE中的中文字体。解决办法:转时先不要直接转成DWG格式,先转成DXF格式(这样在ACAD中文字就不会成为一个图块),再用AutoCAD打开这个DXF文件,这时此ACAD文件字体风格是纯英文字符,用style指令来改变字体风格,采用BIG FONT,选一种较为合适的中文字体,然后应用,你会发现,PROE中标的中文字全回复过来了。经网友试验,SYFS.SHX字体与,PROE的字体相差无几。
6.图纸为实心字,打引印时出现空心字体。解决办法:将ACAD参数TEXTFILL的参数值由0改为1。
篇10:LINUX下ZIP解压文件显示乱码解决方法linux操作系统
有很多朋友都会碰到在linux中解压ZIP文件显示乱码了,下面我来介绍如何解决ZIP解压文件显示乱码这个问题,有需要的朋友可参考,
解决办法
修改系统默认编码为中文
代码如下复制代码vim /etc/sysconfig/i18n
删除里面然后添加如下内容
代码如下复制代码LANG=zh_CN.GBK LANGUAGE=“zh_CN:zh:en_US:en” GST_ID3_TAG_RNCODING=GBK LC_CTYLE=zh_CN.GBK LC_ALL=“zh_CN.GBK”使用7z解压即可解决:7z x test.zip
也可以使用:jar xvf test.zip
安装7Z软件方法
安装7Z软件
32位CentOS执行下面命令:
代码如下复制代码wget -c packages.sw.be/p7zip/p7zip-9.13-1.el5.rf.i386.rpm
wget -c packages.sw.be/p7zip/p7zip-plugins-9.13-1.el5.rf.i386.rpm
rpm -ivh p7zip-9.13-1.el5.rf.i386.rpm
rpm -ivh p7zip-plugins-9.13-1.el5.rf.i386.rpm
64位CentOS执行下面命令:
代码如下复制代码wget -c packages.sw.be/p7zip/p7zip-9.13-1.el5.rf.x86_64.rpm
wget -c packages.sw.be/p7zip/p7zip-plugins-9.13-1.el5.rf.x86_64.rpm
rpm -ivh p7zip-9.13-1.el5.rf.x86_64.rpm
rpm -ivh p7zip-plugins-9.13-1.el5.rf.x86_64.rpm
注意了上面写了32位系统与64位系统哦,大家可根据自己的系统来选择方法,查看
1)
代码如下复制代码[root@localhost ~]# cat /proc/version
Linux version 2.6.18-194.el5 (mockbuild@builder10.CentOS.org) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-48)) #1 SMP Fri Apr 2 14:58:14 EDT 2010
2)
代码如下复制代码[root@localhost ~]# uname -a
Linux localhost.localdomain 2.6.18-194.el5 #1 SMP Fri Apr 2 14:58:14 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux
3)
代码如下复制代码[root@localhost ~]# uname -r
2.6.18-194.el5
【Linux php 中文乱码解决方法linux操作系统】相关文章:
4.linux中sysctl.conf文件常用参数中文说明linux操作系统
10.中文英语翻译






文档为doc格式