PHP如何解决在URL地址栏输入中文字符搜索结果出现乱码

飘逸的风12年前 (2013-09-04)程序5881

这个问题的出现的前提是本站代码采用utf-8格式,当页面停留在搜索页面时,在浏览器的地址栏输入中文的关键字进行搜索时会出现乱码,在网上查找资料说明,是因为浏览器默认将url中的中文字符编码为gb2312格式,而我的程序中的文件编码是使用的utf-8的格式,所以才会出现这个问题,但是如果是直接使用表单提交的数据就不会出现这种问题。解决办法如下,需要PHP开启mb_string支持。

if (!mb_check_encoding($word, 'utf-8')){
    $word = iconv('gb2312', 'utf-8', $word);
}

就是这么简单。

相关文章

PHP制作安装程序的原理与步骤详细讲解

本文讲解PHP制作安装程序的原理与步骤 1、制作PHP安装程序的原理         PHP程序的安装原理就是将数据库结构和内容导入到相...

preg_replace 修饰符

  PatternModifiers-规则表达式的修饰符      下面是当前规则表达式里可用的修饰.括号内的名字是那些修饰符的内部PCRE名字.      i(PCRE_CASELESS)...

分享一个生成sitemap.xml的类

很多站长在做seo优化的时候都会向各大搜索引擎网站提交站点地图sitemap.xml,同样需要提交。于是专门写了一个生成sitemap.xml的类,支持生成在制定目录下,默认生成在网站根目录下。 分...

PHP删除目录及目录下所有文件

1、PHP删除目录及目录下所有文件 01 <?php 02 //循环删除目录和文件函数 03 function delDirAndFil...

Javascript 正则表达式使用手册

一.正则表达式匹配常用语法 “+”字符:规定表达式字符出现一次或多次。 “*”字符:规定表达式字符出现零次或多次。 “?”字符:规定表达式字符出现零次或一次。 ^ 匹配的是字符的开头 ,匹配的...

MemCache安装使用

Windows下的Memcache安装: 1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached 2. 在终端(也即cmd命令界面)下输入 ‘c:\me...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。