一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

Windows下利用Gvim寫PHP產(chǎn)生中文亂碼問題解決方法

首先:找出亂碼產(chǎn)生的原因。 一直以為是瀏覽器的原因,結(jié)果我在chrome,firefox,IE9里面都出現(xiàn)了亂碼,所以瀏覽器的因素可以排除。為了驗(yàn)證我猜測(cè)是Gvim的原因,
我用記事本(note)簡(jiǎn)單寫了一個(gè)php文件
復(fù)制代碼 代碼如下:
<?php
echo "你好";
echo "世界";
?>

結(jié)果沒有出現(xiàn)亂碼,所以問題就出在Gvim上,這個(gè)結(jié)論水到渠成。
于是,開始研究Gvim的配置文件(_vimrc), 現(xiàn)在給大家看一下我產(chǎn)生亂碼之前的配置(注:我之前修改過):
復(fù)制代碼 代碼如下:
set nocompatible
source $VIMRUNTIME/vimrc_example.vim
source $VIMRUNTIME/mswin.vim
behave mswin
set diffexpr=MyDiff()
function MyDiff()
let opt = '-a --binary '
if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
let arg1 = v:fname_in
if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
let arg2 = v:fname_new
if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
let arg3 = v:fname_out
if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
let eq = ''
if $VIMRUNTIME =~ ' '
if &sh =~ '/<cmd'
let cmd = '""' . $VIMRUNTIME . '/diff"'
let eq = '"'
else
let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '/diff"'
endif
else
let cmd = $VIMRUNTIME . '/diff'
endif
silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3 . eq
endfunction
"設(shè)置默認(rèn)背景色
colors desert
"設(shè)置不自動(dòng)備份
set nobackup
"設(shè)置默認(rèn)字體和大小
set guifont=Courier_New:h12:cANSI
set termencoding=gbk
set encoding=utf-8
"產(chǎn)生問題的原因
set fileencoding=chinese
set fileencodings=ucs-bom,utf-8,chinese
set langmenu=zh_CN.utf-8
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
language messages zh_cn.utf-8
language messages zh_cn.utf-8
syntax enable
syntax on

這里需要說明一下:配置文件里enconding,fileeconding,fileecondings的含義:
encoding: GVim 內(nèi)部使用的字符編碼方式,包括 Vim 的 buffer (緩沖區(qū))、菜單文本、消息文本等。
用戶手冊(cè)上建議只在 .vimrc 中改變它的值,事實(shí)上似乎也只有在 .vimrc 中改變它的值才有意義。
fileencoding: GVim 中當(dāng)前編輯的文件的字符編碼方式,Vim 保存文件時(shí)也會(huì)將文件保存為這種字符編碼方式 (不管是否新文件都如此)。
fileencodings: GVim 啟動(dòng)時(shí)會(huì)按照它所列出的字符編碼方式逐一探測(cè)即將打開的文件的字符編碼方式,并且將 fileencoding 設(shè)置為最終探測(cè)到的字符編碼方式。
因此最好將 Unicode 編碼方式放到這個(gè)列表的最前面,將拉丁語(yǔ)系編碼方式 latin1 放到最后面。
其中:chinese 就是 cp963編碼
只到這里我突然想起來,我的瀏覽里默認(rèn)的字符集是 GBK的,而_vimrc里的設(shè)置編碼是utf-8的,二者不對(duì)應(yīng),
復(fù)制代碼 代碼如下:
colors desert
set nobackup
set guifont=Courier_New:h12:cANSI
"處理文本中顯示亂碼
set encoding=utf-8
set fileencodings=chinese
set fileencoding=chinese
"處理菜單及右鍵菜單亂碼
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
"處理consle輸出亂碼
language messages zh_CN.utf-8
syntax enable
syntax on

修改完成之后,重新啟動(dòng)Gvim,中文亂碼問題解決了。

php技術(shù)Windows下利用Gvim寫PHP產(chǎn)生中文亂碼問題解決方法,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产成人精品福利网站在线观看 | 99精品视频在线观看 | 国产zzzwww在线观看 | 国产日韩三级 | 国产黄色网页 | 午夜视频在线观看www中文 | 久久免费99精品国产自在现线 | 五月天激情综合网 | 欧美日韩亚洲一区二区三区 | 色哟哟色院91精品网站 | 日本道综合一本久久久88 | 97在线播放视频 | 黄视频在线免费看 | 成人欧美视频在线观看 | 国产小视频免费观看 | 欧美日本一区亚洲欧美一区 | 精品视频一区二区三区四区 | 五月伊人网 | 久久伊人中文字幕 | 国产精品第1页在线播放 | 最新国产精品视频免费看 | 国产欧美在线观看精品一区二区 | 亚洲成精品动漫久久精久 | 中国欧美日韩一区二区三区 | 精品国产91久久久久久久a | 欧美在线看欧美高清视频免费 | 亚洲夜色| 精品日本一区二区三区在线观看 | 真实国产乱子伦久久 | 国产成人综合亚洲欧洲色就色 | 久久四虎 | 国产午夜一级鲁丝片 | 永久网址:fb000.xyz | 亚洲黄区 | se成人国产精品 | aa级国产女人毛片水真多 | 极品吹潮视频大喷潮tv | 日韩精品久久久免费观看夜色 | 日韩天天摸天天澡天天爽视频 | 国产一区中文字幕在线观看 | 婷婷色婷婷 |