【PHP判断字符串是utf-8还是gb2312并实现utf-8和gb2312自动转化】教程文章相关的互联网学习教程文章

PHP判断字符串是utf-8还是gb2312并实现utf-8和gb2312自动转化

判断字符串是utf-8 还是gb2312函数/** * 判断字符串是utf-8 还是gb2312 * @param unknown $str * @param string $default * @return string */ function utf8_gb2312($str, $default = gb2312) {$str = preg_replace("/[\x01-\x7F]+/", "", $str);if (empty($str)) return $default;$preg = array("gb2312" => "/^([\xA1-\xF7][\xA0-\xFE])+$/", //正则判断是否是gb2312"utf-8" => "/^[\x{4E00}-\x{9FA5}]+$/u", //正则判断是...

问大家一个gbk和gb2312的有关问题

问大家一个gbk和gb2312的问题为什么不从81开始啊,直接都使用高字节不就行了吗?为什么gb2312第一和第二字节都是从a1开始的呢?而gbk的第二字节从40开始?难道是不够用吗?那又何不从01开始呢?------解决方案-------------------- c1 controls探讨为什么不从81开始啊,直接都使用高字节不就行了吗?为什么gb2312第一和第二字节都是从a1开始的呢?而gbk的第二字节从40开始?难道是不够用吗?那又何不从01开始呢?

程序与库编制码都是utf8的如何变成gb2312

程序与库编制码都是utf8的怎么变成gb2312有什么方法吗?或是什么思路?库比较大。 SQL 里面有20多M阿。。。。------解决方案--------------------一定要变成gb2312吗?库比较大?20多M... ------解决方案--------------------为什么要改变?既然你的程序是 utf-8 编码的,那么如果数据库编码改变了,就会导致“乱码”如果你是想把程序文件改成 gbk 的,那么只需执行 select names gbk 由数据库去完成编码转换 ------解决方案-------...

PHP截取中文字符串函数~包括GB2312跟UT-8

PHP截取中文字符串函数~包括GB2312和UT-8/* Utf-8、gb2312都支持的汉字截取函数 cut_str(字符串, 截取长度, 开始长度, 编码); 编码默认为 utf-8 开始长度默认为 0 */ function cut_str($string, $sublen, $start = 0, $code = 'UTF-8') { if($code == 'UTF-8') { $pa = "/[\x01-\x7f]|[\xc2-\xdf][\x80-\xbf]|\xe0[\xa0-\xbf][\x80-\xbf]|[\xe1-\xef][\x80-\xbf][\x80-\xbf]|\xf0[\x90-\xbf][\x80-\xbf][\x...

utf-8怎么转成gb2312

utf-8如何转成gb2312cnt是一个utf-8编码的网页通过地址传过来的参数, 用iconv和mb_convert_encoding进行转换 $cnt=iconv("utf-8","gb2312//IGNORE",$_GET['cnt']);$cnt=mb_convert_encoding($_GET['cnt'],"gb2312","utf-8");但var_dump($cnt)显示的汉字却都变成了方框,请教该如何转换?分享到:------解决方案--------------------你的文件的编码什么格式? 如果是gb2312 加上:header("content-type:text/html;charset=gb2312")...

页面编码替GB2312,提交数据入库成乱码了

页面编码为GB2312,提交数据入库成乱码了页面是GB2312的 入库的时候我加入了 mysql_query("set names 'gbk'")or die("设置字符库失败"); 输出还是乱码,有没有在不调整页面编码模式的基础下其他的解决方法?乱码mysql分享到:输出还是乱码,有没有在不调整页面编码模..." data-pics="">------解决方案--------------------你表中字段的连接校对是什么?

php字符串截取(UTF-八/GB2312)

php字符串截取(UTF-8/GB2312)1. 截取GB2312中文字符串 //截取中文字符串function mysubstr($str, $start, $len) {??? $tmpstr = "";??? $strlen = $start + $len;??? for($i = 0; $i ??????? if(ord(substr($str, $i, 1)) > 0xa0) {??????????? $tmpstr .= substr($str, $i, 2);??????????? $i++;??????? } else??????????? $tmpstr .= substr($str, $i, 1);??? }??? return $tmpstr;}?> 2. 截取utf8编码的多字节字符串 //截取ut...

怎么把数据从GB2312转换成UTF-8

如何把数据从GB2312转换成UTF-8我使用了iconv和mb_convert_encoding两个函数都试了,然后发现结果是一样的,都会出现各种问题,不是哪里少字了就是直接错误,请问大神怎么解决啊------解决方案--------------------gbk 的数据插入到 utf8 的表,只需在插入前执行一次 mysql_query('set names gbk'); 就可以了mysql_query('set names gbk');这条指令的作用是:通知 mysql 现在用 gbk 字符集进行操作转码的工作由 mysql 自己完成

完善解决截取中文汉字不乱码-PHP字符串函数(支持utf8、GBK、GB2312)

完美解决截取中文汉字不乱码-PHP字符串函数(支持utf8、GBK、GB2312) 我们主要对utf8、GBK、GB2312的截取中文字符串进行讲解,完美解决截取中文汉字不乱码-PHP字符串函数:1、截取GB2312以及GBK编码的字符串函数功能:截取GB2312以及GBK编码的字符串,从第一个字符开始截取,2个长度代表一个汉字$str————截取源字符串$len————截取长度(2代表一个汉字)PS:该函数不能用于utf8编码字符串,会出现乱码function splitStr($...

PHP字符串编码截取函数(兼容utf-8和gb2312)_php实例

代码如下://截取字符串长度。支持utf-8和gb2312编码。若为gb2312,先将其转为utf-8,在utf-8的基础上截取然后再转换回来 function cut_string($str,$from=1,$length=10,$code='utf-8',$rear='...'){ if($code!='utf-8'){//总是将字符串转为utf-8编码 $str=iconv($code,'utf-8',$str); } $str_len=mb_strlen($str,'utf-8');//字符串的长度 if($from>$str_len){//如果截取开始位置大于字符串长度,截取后面$...

关于编码:ansi、gbk、gb2312、utf8、utf16、utf32、Unicode【图】

从接触编程以来,一直对编码的知识一知半解,总没有掌握精髓。 比如:ansi和gbk的关系,gbk和gb2312又有何关系,ansi和utf8有何区别,Unicode又和utf8是什么关系,以及ansi、gbk、gb2312、utf8(有无Bom之分)、utf16、utf32、Unicode之间的相互转换等等,心中的疑问总没有找个机会解决下,希望能在segmentfault得到满意的答案。 如果有这方面的书籍的话(javascript的最好了,因为刚好是在javascript中碰到的问题),最好不过了! ...

gb2312不是不能表示繁体中文吗?

查了下gb2312只能表示简体中文(6000多个汉字),而gbk是gb2312的扩展(兼容gb2312),可以表示(2万多个汉字)。简体中文 繁體中文运行上面代码的时候,发现繁體中文可以正常显示的,并不会乱码,哪里错了吗?回复内容:查了下gb2312只能表示简体中文(6000多个汉字),而gbk是gb2312的扩展(兼容gb2312),可以表示(2万多个汉字)。简体中文 繁體中文运行上面代码的时候,发现繁體中文可以正常显示的,并不会乱码,哪里错了吗?...

lamp服务器,html设置了metacharset=gb2312,浏览器请求还是utf-8,什么原因【图】

php默认编码注释掉了,apache的默认编码也改掉了,然而网站打开的时候还是乱码?是什么原因如果给界面加上php header,浏览器能够正常访问,但是程序是以前人写的旧程序,连统一入口都没有,每个文件去改不现实环境是php5.6,centos6.5程序在另外一台服务器上没问题,windows本机环境也没问题回复内容:php默认编码注释掉了,apache的默认编码也改掉了,然而网站打开的时候还是乱码?是什么原因如果给界面加上php header,浏览器能够正常访问,但...

php接收ajaxpost数据编码只能是gb2312

phppost 各位大侠,我是一名初学者,用ajax post方式做的登录模块,提交数据到php,发现用gb2312编码能正常接收数据,用utf-8编码php端就没有反应。我的各个网页均已经设为utf-8编码了,为什么会这样?还有用gb2312发送后,服务器端能正常查询数据库,但是返回数据‘1’后,在js代码里面if与‘1’比较却不相等,结果进入else代码,是否也是编码格式不相同的问题?烦请各位大侠帮忙指点迷津,谢谢!js代码如...

xml-PHP&XML解码问题(utf-8/GB2312)

utf-8xmlphp乱码 我在PHP中向XML文件添加纪录(中文),设置了header函数为UTF-8,XML文件也为UTF-8,但是插入的记录是乱码,求各位解惑。

GB2312 - 相关标签