iconv()字符之间的转换

原创 2004年10月17日 21:47:00
一个朋友问我怎样用php和gd输出带中文字符的图片,我当然是叫他先到网上搜索一番的,结果,他说都只找到一个用码表进行转换(gb2unicode?)的方法,问我有没有更好的,更快一点的方法。
那当然是有的,而且要快多了,也容易多了,那就是iconv,当然,这要求你有管理员的权限,在安装了libiconv之后,在把php用--with-iconv参数配置编译,或者生成独立的扩展模块,都行,以后,就可以直接用iconv函数来转化了。像下面这样子:
<?php
header("content-type:image/gif");
$pic=imagecreate(500,400);
$black=imagecolorallocate($pic,150,150,150);
$color=imagecolorallocate($pic,5,5,5);
$font1="/home/share/font/simli.ttf";
$font2="/home/share/font/simhei.ttf";
$font3="/home/share/font/simsun.ttf";
$font4="/home/share/font/simyou.ttf";
$str1=iconv("gb2312","UTF-8","离离原上草,一岁一枯荣。");
$str2=iconv("gb2312","UTF-8","野火烧不尽,春风吹又生。");
$str3=iconv("gb2312","UTF-8","远芳侵古道,青翠接荒城。");
$str4=iconv("gb2312","UTF-8","又送王孙去,萋萋满别情。");
//imagettftext($pic,16,0,155,365,$color,$font1,$str1);
//imagettftext($pic,16,0,155,405,$color,$font2,$str2);
//imagettftext($pic,16,0,155,445,$color,$font3,$str3);
//imagettftext($pic,16,0,155,485,$color,$font4,$str4);
imagegif($pic);
imagedestroy($pic);
?>

主要有效的语句是$str=iconv("gb2312","UTF-8","中文字符串");
看看,多简单啊!当然,在没有安装libiconv以及php扩展的时候,用转换码表是唯一的选择了。这里写出来,给大家多一个参考吧。

另外,我用的libiconv是1.7版的,从gb2312到utf-8很正常,但是到big5就不正常了,当然我不用繁体,这也没什么大不了的。

PHP iconv()字符编码转换的问题

在php函数库有一个函数:iconv(),iconv函数库能够完成各种字符集间的转换,是php编程中不可缺少的基础函数库。最近在做一个小偷程序,需要用到iconv函数把抓取来过的utf-8编码的页面转...
  • tashanhongye
  • tashanhongye
  • 2015年12月17日 20:47
  • 1125

php iconv转编码 数据丢失的解决方法

今天在处理抓取内容的时候,当采用iconv进行编码转换的时候,发现结果会中断,猜是字符集的问题,考虑怎么跳过目标字符集不存在的字符,查手册发现iconv的函数只有三个参数,好像不行,然后查网上有人说可...
  • qqahanson
  • qqahanson
  • 2015年02月17日 10:18
  • 1437

字符编码转换libiconv库

当前流行的字符编码格式有:US-ASCII、ISO-8859-1、UTF-8、UTF-16BE、UTF-16LE、UTF-16、GBK、GB2312等,其中GBK、GB2312是专门处理中文编码的。因...
  • huangminqiang201209
  • huangminqiang201209
  • 2013年06月25日 10:39
  • 3971

Linux iconv --字符编码转换工具

用途说明 iconv命令是用来转换文件的编码方式的(Convertencoding of given files from one encoding to another),比如它可以将UTF8编码的...
  • mosesmo1989
  • mosesmo1989
  • 2016年04月08日 10:17
  • 512

libIconv库实现中文中字符串与GBK、Unicode、UTF-8三种编码互转

libIconv库实现GBK、Unicode、UTF-8三种编码互转比window api更为简单,而且libIconv库跨平台。 IibIconv库在windows下的编译参照windows下使用V...
  • bladeandmaster88
  • bladeandmaster88
  • 2017年02月01日 23:32
  • 2721

c语言使用iconv函数实现字符编码转换

c语言使用iconv函数实现字符编码转换 linux下提供了iconv库来实现字符编码转换,先介绍下命令行: iconv [-f encoding] [-t encoding] [inputfile ...
  • gwq5210
  • gwq5210
  • 2014年12月29日 12:57
  • 3358

用iconv 文件格式转换

Windows转到linux中,文件乱码,文件编码转换
  • li0524158198
  • li0524158198
  • 2014年10月30日 23:46
  • 483

编码转换之iconv批量转换

将WINDDB文件夹下的文件从GBK编码转为UTF-8编码,结果存到WINDDB_UTF8肿,保持其下的文件目录不变: find WINDDB -type d -exec mkdir -p ...
  • deqingguo
  • deqingguo
  • 2012年03月03日 11:05
  • 2469

[iconv] linux系统下与原系统字符编码转换陷阱

original Link: http://blog.csdn.net/userguanguan/article/details/6393310 /桌面$ file 备忘录.txt 备忘录...
  • u011627789
  • u011627789
  • 2014年04月16日 12:28
  • 943

linux文件编码的转换iconv

1. iconv iconv命令用于文件编码的转换, 碰到gbk编码的文件,需要转换成utf8,直接使用该命令即可。 iconv --list :列出iconv支持的编码列表 -f : from 来...
  • u014285882
  • u014285882
  • 2014年08月09日 20:18
  • 2544
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iconv()字符之间的转换
举报原因:
原因补充:

(最多只允许输入30个字)