【php – Utf-8:成功转换为iso-8859-1但不转换为iso-8859-2】教程文章相关的互联网学习教程文章

php对gb编码动态转utf-8编码的几种方法评测

在《ip地址->地理位置转换的测评》一文中提到用ip2addr函数直接读取IP数据库文件是效率最高的,相比用MySQL数据库存储IP数据,用SQL查询是效率最低的。但是IP数据库文件QQWry.dat是GB2312编码的。现在我需要UTF-8编码的地理位置结果。如果用MySQL方法,可以在数据存入数据库时就转换为UTF-8编码,一劳永逸。但是QQWry.dat文件又无法修改,只能把ip2addr函数的输出结果再进行动态转换。 动态转换GB->UTF-8编码至少有四种方法: 用ph...

在PHP中进行GB2312与UTF-8的互换_PHP

因为证书中有中文,所以需要在PHP中进行GB2312与UTF-8的互换。网上搜索一下这方面相关资料,说是需要php_iconv.dll的支持,可是我在PHP5文件夹中根本找不到这个文件,但是奇怪的是在PHP4中有这个,然后我将PHP4中的php_iconv.dll文件,复制到system32下,却提示出现错误,我想应该也不行,毕竟PHP4和PHP5里面的文件应该不兼容。到这里我就想删除了PHP5,装一个PHP4算了,后来发现一段话:iconv and libxml are compiled into php5t...

不用iconv库的gb2312与utf-8的互换函数_PHP

一份gb2312.txt(184799字节)确实显得太大了点,而且还要经unicode转换。这份对照表为51965字节,要小的多了。对于无法使用iconv函数库的场合还是很实用的。//对照表的使用$filename = "gb2utf8.txt";$fp = fopen($filename,"r");while(! feof($fp)) { list($gb,$utf8) = fgetcsv($fp,10); $charset[$gb] = $utf8;}fclose($fp);//以上读取对照表到数组备用/** gb2312到utf-8 **/function gb2utf8($text, &$charset) { //提取文...

用php实现gb2312和unicode(UTF-8)间的编码转换_PHP

下面的例子是将 gb2312 转换为 uft-8 这种形式php4.3.1以后的iconv函数很好用的,只是需要自己写一个uft8到unicode的转换函数查表(gb2312.txt)也行$text = "电子书库";preg_match_all("/[\x80-\xff]?./",$text,$ar);foreach($ar[0] as $v) echo "&#".utf8_unicode(iconv("GB2312","UTF-8",$v)).";";?>// utf8 -> unicodefunction utf8_unicode($c) { switch(strlen($c)) { case 1: return ord($c); case 2: $n =...

gb2312的php文件转换为utf-8格式后的一个错误_PHP

GB2312的php文件转换为UTF-8格式后,php程序运行时就会出现header已发送这样的错误提示(试图打开session的时候)。 错误如下: 代码: Warning: Cannot modify header information - headers already sent by (output started at /home/yoyo/public_html/blog/index.php:1) in /home/yoyo/public_html/blog/global.php on line 11 ? Warning: Cannot modify header information - headers already sent by (output started at /hom...

jq的get传参数在utf-8中乱码问题的解决php版_PHP

Untitled Document echo urldecode("%E5%93%88%E5%93%88"); echo ""; echo rawurldecode("%E5%93%88%E5%93%88"); echo ""; echo utf8_decode("%E5%93%88%E5%93%88"); echo ""; echo "%E5%93%88%E5%93%88"; echo ""; echo $_GET['act']; echo ""; echo urlencode($_GET['act']); ?>

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){//如果截取开始位置大于字符串长度,截取后面$...

Web开发中遇到的UTF-8的问题总结_PHP

一个网站如果需要国际化,就需要将编码从GB2312转成UTF-8,其中有很多的问题需要注意,如果没有转换彻底,将会有很多的编码问题出现! 主要有五个方面: 一..HTML页面转UTF-8编码问题 二.PHP页面转UTF-8编码问题 三.MYSQL数据库使用UTF-8编码的问题 四.JS相关的UTF-8编码问题 五.FLASH相关的UTF-8编码问题 一.HTML页面转UTF-8编码问题 1.在后,前加入一行:顺序不能错,一定要在标签前加入,否则如果与之间有中文字符的话,显示的标...

PHPiconv解决utf-8和gb2312编码转换问题_PHP

终于皇天不负有心人,答案还是让我找到了。 网上的都是这样用的 代码如下:$content = iconv("utf-8","gb2312",$content); 这样做其实也对着了,看着确实是把utf-8转化为gb2312了,但是实际运行的话,往往都是以失败告终的,原因呢? 原因实际上也很简单,因为任何的函数都是执行错误的时候,同时很不幸的是iconv();就很终于出现错误。现在给你正确的答案。 真正的答案是这样的 代码如下:$content = iconv("utf-8","gb2312//IGNOR...

php截取utf-8中文字符串乱码的解决方法_PHP

代码如下:function utf8_substr($str,$len) {   for($i=0;$i  {     $temp_str=substr($str,0,1);     if(ord($temp_str) > 127){       $i++;     if($i      $new_str[]=substr($str,0,3);       $str=substr($str,3);       }     }else {     $new_str[]=substr($str,0,1);     $str=substr($str,1);     }   }   return join($new_str); }

PHP解决utf-8和gb2312编码转换问题_PHP

终于皇天不负有心人,答案还是让我找到了。 网上的都是这样用的 代码如下:$content = iconv("utf-8","gb2312",$content); 这样做其实也对着了,看着确实是把utf-8转化为gb2312了,但是实际运行的话,往往都是以失败告终的,原因呢? 原因实际上也很简单,因为任何的函数都是执行错误的时候,同时很不幸的是iconv();就很终于出现错误。现在给你正确的答案。 真正的答案是这样的 代码如下:$content = iconv("utf-8","gb2312//IGNOR...

PHP乱码问题,UTF-8乱码常见问题小结_PHP

一.HTML页面转UTF-8编码问题 1.在head后,title前加入一行: 顺序不能错,一定要在 显示的标题有可能是乱码! 2.html文件编码问题: 点击编辑器的菜单:“文件”->“另存为”,可以看到当前文件的编码,确保文件编码为:UTF-8, 如果是ANSI,需要将编码改成:UTF-8。 3.HTML文件头BOM问题: 将文件从其他的编码转换成UTF-8编码时,有时候会在文件的最开始加上一个BOM标签, 在个BOM标签可能会导致浏览器在显示中文的时候出现乱码。...

PHP正确解析UTF-8字符串技巧应用_PHP

在《学习PHP&MYSQL之——字符编码篇(一)》中介绍了Unicode与UTF-8的转换关系,总结了一个UTF-8的编码规则,根据这个编码规则,写一个UTF-8编码的解析程序,以下是PHP的实现: 代码如下:/* 程序功能,$str是中英文混合的UTF-8编码字符串, 将此字符串根据UTF-8的编码规则正确的解码并显示。 */ $str = '今天非常Happy,所有决定去KFC吃可乐鸡翅!!!'; /* $str 是待截取的字符串 $len 是截取的字符数 */ function utf8sub($str,$len...

php实现utf-8和GB2312编码相互转换函数代码_PHP

代码如下: /******************************************** * * 函数名:get_utf8_to_gb($value) * 作 用:utf8编码字符串转换成gb2312编码 * 作 者:刘先忠 * 日 期:2011-11-09 * ********************************************/function get_utf8_to_gb($value){ $value_1= $value; $value_2 = @iconv( "utf-8", "gb2312//IGNORE",$value_1);//使用@抵制错误,如果转换字符串中,某一个字符在目标字符集里没...

解析使用substr截取UTF-8中文字符串出现乱码的问题_PHP

我们知道有时候使用substr来截取UTF-8中文字符串的时候,经常会出现乱码,为什么会出现这样的问题呢,本文告诉你答案。看这样一段代码吧(字符编码为UTF-8): 代码如下:$str = '都知道strlen与mb_strlen是求字符串长度的函数';echo strlen($str)'.'.mb_strlen($str,'utf-8');?>运行上述代码,返回值如下:6634怎么样?strlen中,中文是三个字节的长度,英文则是一个字节的长度!mb_strlen中,都被计算为一字节的长度!所以,我们...