日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > PHP 讀取文件亂碼的解決方法

PHP 讀取文件亂碼的解決方法

來源:程序員人生   發布時間:2014-05-26 11:11:51 閱讀次數:3030次
php 5的流讀取函數好像默認編碼是UTF-8,以前在php 4里直接file_get_contents()讀取gb2312編碼的正常,到了5就亂碼了。網上的解決辦法說抓取后用iconv()轉碼。看后我就覺 得不對勁:一個是不一定編譯了iconv庫,更大的問題是編碼都跟流轉換的時候有關(如果用了iconv實際上php轉了兩次碼:流 -> UTF-8 -> GB2312):這不是白忙乎了嗎?

仔細看了下php的文檔(不知道大家都是怎么寫代碼的,其實文檔上很清楚啊),上面關于fopen()及file_get_contents()都 提到了“默認是UTF-8,但是用戶可以用stream_default_encoding()或者用戶自定義上下文屬性改變編碼”(If unicode semantics are enabled, the default encoding of the read data is UTF-8. You can specify a different encoding by creating a custom context or by changing the default using stream_default_encoding().)。于是用stream_default_encoding(’gb2312′);測試:但是 faint的是,這個函數不存在?!似乎php 6才支持。不過天無絕人之路,還有“用戶自定義上下文屬性”可以用。

經過更仔細的看文檔,最后解決了這個問題:

//設置流的編碼格式,這是文件流(file),如果是網絡訪問,file改成http
$opts = array('file' => array('encoding' => 'gb2312'));
$ctxt = stream_context_create($opts);
file_get_contents(文件名, FILE_TEXT, $ctxt);
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 亚洲国产成人精品久久久国产成人一区 | 四季久久免费一区二区三区四区 | 加勒比在线免费视频 | 欧美日韩不卡 | 操操网 | 久久精品国产一区二区电影 | 精品一区二区免费视频 | 这里是精品| 波多野结衣av电影 | 在线日韩视频 | 精精国产xxxx视频在线野外 | 青青国产精品 | 91超碰在线免费观看 | 国产成人高清精品免费5388 | 色老板在线视频 | 久久久亚洲成人 | 91超碰中文字幕久久精品 | 国产精品99久久久久久动医院 | 黄免费网站 | 日韩和欧美的一区二区 | 亚洲区一区二区 | 激情在线观看视频 | 综合久久一区二区 | 久久一区二 | 国产成人精品一区二区三区视频 | 精产国产伦理一二三区 | 99爱免费视频 | 国产a网| 日韩欧美国产高清 | 精品三区 | 最近中文字幕免费视频 | 国产在线黄色 | 国产黄色电影 | 午夜美女视频 | 国产综合精品一区二区三区 | 亚洲 中文 欧美 日韩 在线观看 | 国产在线免 | 久久国产精品免费 | 久久久综合色 | 中文字幕 视频一区 | 国产一级电影网 |