Heim > Backend-Entwicklung > PHP-Tutorial > PHP通过iconv将字符串从GBK转换为UTF8字符集_php技巧

PHP通过iconv将字符串从GBK转换为UTF8字符集_php技巧

WBOY
Freigeben: 2016-05-17 09:16:48
Original
1048 Leute haben es durchsucht

1. iconv()介绍
iconv函数可以将一种已知的字符集文件转换成另一种已知的字符集文件。例如:从GB2312转换为UTF-8。
iconv函数在php5中内置,GB字符集默认打开。
2. iconv()错误
iconv在转换字符”—”到gb2312时会出错,解决方法是在需要转成的编码后加 “//IGNORE”,也就是iconv函数第二个参数后.如下:

复制代码 代码如下:

iconv("UTF-8", "GB2312//IGNORE", $data)

ignore的意思是忽略转换时的错误,如果没有ignore参数,所有该字符后面的字符串都无法被保存。
3. iconv()例子
例1:
复制代码 代码如下:

  echo $str= ‘你好,这里是卖咖啡!';
  echo '
';
  echo iconv('GB2312', 'UTF-8', $str); //将字符串的编码从GB2312转到UTF-8
  echo '
';
  echo iconv_substr($str, 1, 1, 'UTF-8'); //按字符个数截取而非字节
  print_r(iconv_get_encoding()); //得到当前页面编码信息
  echo iconv_strlen($str, 'UTF-8'); //得到设定编码的字符串长度
?>

例2:
如果你的PHP文件是UTF-8编码的,那么下面的代码就可以正确输出:
复制代码 代码如下:

  $str='我爱百度';
  $utf='';
  for ($i=0;$i  echo $utf;
?>

如果你的PHP文件是GB的,那么下面的代码可以工作:
复制代码 代码如下:

  $str='我爱百度';
  $str=iconv("GBK", "UTF-8", $str);
  $utf='';
  for ($i=0;$i  echo $utf;
?>

以上情况下,程序输出的内容是:
%E6%88%91%E7%88%B1%E7%99%BE%E5%BA%A6
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage