Home > Backend Development > PHP Tutorial > GB2312-UTF-8 conversion function_PHP tutorial

GB2312-UTF-8 conversion function_PHP tutorial

WBOY
Release: 2016-07-13 17:22:55
Original
878 people have browsed it

What does this function do? Oh, after converting Chinese characters to UTF-8, you can use them in GD!


//Program writen by sadly www.phpx.com
function gb2utf8($gb)
{
if(!trim($gb))
return $gb;
$filename="gb2312.txt";
$tmp=file($filename);
$codetable=array();
while(list($key,$value )=each($tmp))
$codetable[hexdec(substr($value,0,6))]=substr($value,7,6);

$utf8="";
while($gb)
{
if (ord(substr($gb,0,1))>127)
{
$this=substr($gb,0,2 );
$gb=substr($gb,2,strlen($gb));
$utf8.=u2utf8(hexdec($codetable[hexdec(bin2hex($this))-0x8080]));
}
else
{
$gb=substr($gb,1,strlen($gb));
$utf8.=u2utf8(substr($gb,0,1) );
}
}

$ret="";
for($i=0;$i$ ret.=chr(substr($utf8,$i,3));

return $ret;
}

function u2utf8($c)
{
for($i=0;$i$str="";
if ($c $str.=$c;
}
else if ($c
$str.=(0xC0 | $c>>6);
$ str.=(0x80 | $c & 0x3F);
}
else if ($c $str.=(0xE0 | $c>>12);
$str .=(0x80 | $c>>6 & 0x3F);
$str.=(0x80 | $c & 0x3F);
}
else if ($c $ str.=(0xF0 | $c>>18);
$str.=(0x80 | $c>>12 & 0x3F);
$str.=(0x80 | $c>>6 & 0x3F) ;
$str.=(0x80 | $c & 0x3F);
}
return $str;
}

Header("Content-type: image/gif") ;
$im = imagecreate(400,300);
$bkg = ImageColorAllocate($im, 0,0,0);
$clr = ImageColorAllocate($im, 255,255,255);
$fnt = "wb.ttf";
//include("gb2utf8.php");
$str = gb2utf8("China");
ImageTTFText($im, 20, 0, 10, 20, $ clr, $fnt, $str);
ImageGif($im);
ImageDestroy($im);
?>

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/532256.htmlTechArticleWhat is this function for? Oh, after converting Chinese characters to UTF-8, you can use them in GD! //Program writen by sadly www.phpx.com function gb2utf8($gb) { if(!trim($gb)) return $gb...
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template