新聞中心
本文操作環(huán)境:windows7系統(tǒng)、php7.4版、DELL G3電腦

創(chuàng)新互聯(lián)建站專注于企業(yè)全網(wǎng)營(yíng)銷推廣、網(wǎng)站重做改版、順義網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5頁(yè)面制作、商城系統(tǒng)網(wǎng)站開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為順義等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
php echo get參數(shù) 亂碼怎么辦?
PHP接收GET中文參數(shù)亂碼的原因及解決方案
前幾天我用sphinx寫一個(gè)搜索功能,用瀏覽器測(cè)試搜索效果,可怎么也無(wú)法搜索到中文內(nèi)容。我用echo把$_GET到的關(guān)鍵字輸出一看,在UTF-8的頁(yè)面編碼下顯示的是亂碼,切換到gb2312時(shí)為正常??墒莝phinx只支持UTF-8的中文字符搜索,所以我不得不解決接收到的中文參數(shù)的問(wèn)題。
在網(wǎng)上google了下,找到一篇名為《PHP接收GET中文參數(shù)亂碼深入研究》的文章,文章中提到這是由于瀏覽器的設(shè)置問(wèn)題,如果直接上地址欄輸入中文參數(shù),在中文界面的瀏覽器中一般是以gbk的編碼接收參數(shù)的。像這些情況,我們就需要使用php內(nèi)置的轉(zhuǎn)碼函數(shù)來(lái)處理編碼問(wèn)題了:
方案1:
$str = iconv("gb2312","utf-8",$str);
方案2:
mb_convert_encoding($str, "utf-8", "gb2312");
如果是在utf-8的頁(yè)面編碼下用文本輸入框得到的中文參數(shù),則頁(yè)面會(huì)為其編碼默認(rèn)為當(dāng)前編碼,所以在這種情況下不需要用以上的轉(zhuǎn)碼方式。
如果要在頁(yè)面中生成帶中文參數(shù)值的鏈接,那需在utf-8編碼的代碼下將中文字符用urlencode()編碼后再生成鏈接即可。
當(dāng)前文章:phpechoget參數(shù)亂碼怎么辦
分享網(wǎng)址:http://m.fisionsoft.com.cn/article/ccsiedg.html


咨詢
建站咨詢
