【浅析PHP中的字符串编码转换(自动识别原编码)】教程文章相关的互联网学习教程文章

php汉字转码GBK->Unicode(UTF8)编码转换

<?//php汉字转码 GBK->Unicode(UTF8)class qswhGBK{ var $qswhData; function qswhGBK($filename="qswhGBK.php"){ $this->qswhData=file($filename); } function gb2u($gb,$callback=""){ /******(qiushuiwuhen 2002-8-15)******/ $ret=""; for($i=0;$i<strlen($gb);$i++){ if(($p=ord(substr($gb,$i,1)))>127){ $q=ord(substr($gb,++$i,1)); $q=($q-($q>128?65:64))*4; $q=substr($this->qswhData[$p-128],$q,...

php汉字转码GBK到Big5编码转换

<?//php汉字转码class qswhBig5{ var $qswhData; function qswhBig5($filename="qswhBig5.php"){ $this->qswhData=file($filename); } function qswhStr($gb,$fail="??"){ /******(qiushuiwuhen 2002-9-6)******/ $ret=""; for($i=0;$i<strlen($gb);$i++){ if(($p=ord(substr($gb,$i,1)))>127){ $q=ord(substr($gb,++$i,1)); $tmp=$this->qswhData[$p-128]; for($j=0;$j<strlen($tmp);$j+=6)if(($k=hexdec(substr($...

php编码转换实现gbk编码转换为utf8

class gb2utf8 { var $gb; // 待转换的gb2312字符串 var $utf8; // 转换后的utf8字符串 var $codetable; // 转换过程中使用的gb2312代码文件数组 var $errormsg; // 转换过程之中的错误讯息 function gb2utf8($instr="") { $this->gb=$instr; $this->setgb2312(); ($this->gb=="")?0:$this->convert(); } function setgb2312($instr="gb2312.txt") { // 设置gb2312代码文件,默认为gb2312.txt $this->errormsg=""; $t...

php字符串编码转换小例子

function phpcharset($data, $to) {if(is_array($data)) {foreach($data as $key => $val) {$data[$key] = phpcharset($val, $to);}} else {$encode_array = array('ascii', 'utf-8', 'gbk', 'gb2312', 'big5');$encoded = mb_detect_encoding($data, $encode_array);$to = strtoupper($to);if($encoded != $to) {$data = mb_convert_encoding($data, $to, $encoded);}}return $data;}?>

php字符编码转换问题

$string=mb_convert_encoding($string, 字符输出编码, 原字符编码); 例如:网页使用gbk编码,字符串使用utf-8编码,将字符转换为网页显示编码。echo mb_convert_encoding("php编码转换", "gbk", "utf-8");总结:推荐使用mb_convert_encoding函数,该函数无iconv转换字符错误问题。 对字符串进行编码转换,要转成UTF-8。 如果知道原字符串编码,就可以使用大家都熟悉的iconv函数,但现在是不知道原字符串的编码,可能是GBK,也可能原...

php字符编码转换问题mb_convert_encoding与iconv函数

header("content-type: text/html; charset=utf-8");echo mb_convert_encoding("妳係我的友仔", "utf-8", "gbk");?> gb2312 to big5编码转换:header("content-type: text/html; charset=big5");echo mb_convert_encoding("你是我的朋友", "big5", "gb2312");?> 如果使用以上函数,需要安装但是需要先enable mbstring 扩展库。 string mb_convert_encoding ( string str, string to_encoding [, mixed from_encoding] )需要先enabl...

php中文汉字与16进制编码转换三种方法

//汉字转换为16进制编码function hexencode($s) { return preg_replace('/(.)/es',"str_pad(dechex(ord('\\1')),2,'0',str_pad_left)",$s); }//16进制编码转换为汉字function hexdecode($s) { return preg_replace('/(\w{2})/e',"chr(hexdec('\\1'))",$s);}echo hexdecode(hexencode("北京欢迎您!"));?>方法2,echo rawurlencode("北京欢迎您").; 返回字符串,此字符串中除了 -_. 之外的所有非字母数字字符都将被替换成百...

php汉字转码Unicode(UTF8)至GBK编码转换

<?php//php汉字转码class qswhU{ var $qswhData; function qswhU($filename="qswhU.php"){ $this->qswhData=file($filename); } function decode($str,$pattern=0){ $arr=array("/&#(/w+);/iU","/((%/w/w)+)/i","/%u(/w{4,5})/iU"); if(is_integer($pattern)){ if($pattern>=count($arr))die("Invalid Function"); $pattern=$arr[$pattern]; } return preg_replace_callback($pattern,array($this,"u2gb"),$str); } //...

用php实现gb2312和unicode间的编码转换_PHP教程

gb2312 和 unicode 间的编码转换 下面的例子是将 gb2312 转换为 ""这种形式 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 -> unicode function utf8_unicode($c) { switch(strlen($c)) { case 1: r...

MySQLGBK→UTF-8编码转换_PHP教程

前言: 第一次写教程,其实算不得教程,只是想总结个转换的手记。如果中间有错误,或者办法不够理想,大家回贴研究下。 另外,我也希望我们论坛不仅仅作为闲聊的地方,也希望大家能活跃我们论坛的学习气氛,毕竟我们都来自一个应该给我们知识的地方,不论你从那里获得了多少你需要的知识。 好了,言归正传。 一准备: 环境:MySQL4.1.x及以上版本。 Convertz——文本编码转换工具,molyx上介绍的,我采用的。其实这类工具很多。 二理...

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

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

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

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

PHP编码转换_PHP教程

SELECT COLLATIONPROPERTY('Chinese_PRC_Stroke_CI_AI_KS_WS', 'CodePage') 返回为936,即GBK编码。 936 简体中文GBK 950 繁体中文BIG5 437 美国/加拿大英语 932 日文 949 韩文 866 俄文 65001 unicode UFT-8 如果字段有中文,PHP文件设置编码为GBK2312,则取数据库信息时没有问题: print_r($rs["客户编码"]); 如果PHP文件设置编码为utf-8,则会报告错误。 如果非要把php文件的编码设置为utf-8,则需要转换一下编码: print_r($rs[m...

基于php导出到Excel或CSV的详解(附utf8、gbk编码转换)_PHP教程

php导入到excel乱码是因为utf8编码在xp系统不支持所有utf8编码转码一下就完美解决了utf-8编码案例Php代码 代码如下:header("Content-Type: application/vnd.ms-excel; charset=UTF-8"); header("Pragma: public"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Content-Type: application/force-download"); header("Content-Type: application/octet-stream"); header("...

浅析PHP中的字符串编码转换(自动识别原编码)_PHP教程

代码如下:/** * 对数据进行编码转换 * @param array/string $data 数组 * @param string $output 转换后的编码 */function array_iconv($data,$output = 'utf-8') { $encode_arr = array('UTF-8','ASCII','GBK','GB2312','BIG5','JIS','eucjp-win','sjis-win','EUC-JP'); $encoded = mb_detect_encoding($data, $encode_arr);//自动判断编码if (!is_array($data)) { return mb_convert_encoding($data, $output, $encode...