五月综合缴情婷婷六月,色94色欧美sute亚洲线路二,日韩制服国产精品一区,色噜噜一区二区三区,香港三级午夜理伦三级三

您現(xiàn)在的位置: 365建站網(wǎng) > 365文章 > PHP通過iconv將字符串從GBK轉(zhuǎn)換為UTF8字符集

PHP通過iconv將字符串從GBK轉(zhuǎn)換為UTF8字符集

文章來源:365jz.com     點擊數(shù):321    更新時間:2017-08-03 18:17   參與評論
1. iconv()介紹 
iconv函數(shù)可以將一種已知的字符集文件轉(zhuǎn)換成另一種已知的字符集文件。例如:從GB2312轉(zhuǎn)換為UTF-8。 
iconv函數(shù)在php5中內(nèi)置,GB字符集默認打開。 
2. iconv()錯誤 
iconv在轉(zhuǎn)換字符”—”到gb2312時會出錯,解決方法是在需要轉(zhuǎn)成的編碼后加 “//IGNORE”,也就是iconv函數(shù)第二個參數(shù)后.如下: 

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

ignore的意思是忽略轉(zhuǎn)換時的錯誤,如果沒有ignore參數(shù),所有該字符后面的字符串都無法被保存。 
3. iconv()例子 
例1: 

<?php
  echo $str= ‘你好,這里是賣咖啡!';
  echo '<br />';
  echo iconv('GB2312', 'UTF-8', $str); //將字符串的編碼從GB2312轉(zhuǎn)到UTF-8
  echo '<br />';
  echo iconv_substr($str, 1, 1, 'UTF-8'); //按字符個數(shù)截取而非字節(jié)
  print_r(iconv_get_encoding()); //得到當前頁面編碼信息
  echo iconv_strlen($str, 'UTF-8'); //得到設(shè)定編碼的字符串長度
?> 

例2: 
如果你的PHP文件是UTF-8編碼的,那么下面的代碼就可以正確輸出: 

<?php
  $str='我愛百度';
  $utf='';
  for ($i=0;$i<strlen($str);$i++) $utf.=sprintf("%%%02X",ord(substr($str,$i,1)));
  echo $utf;
?> 

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

<?php
  $str='我愛百度';
  $str=iconv("GBK", "UTF-8", $str);
  $utf='';
  for ($i=0;$i<strlen($str);$i++) $utf.=sprintf("%%%02X",ord(substr($str,$i,1)));
  echo $utf;
?> 

以上情況下,程序輸出的內(nèi)容是: 
%E6%88%91%E7%88%B1%E7%99%BE%E5%BA%A6

如對本文有疑問,請?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會為你解答??! 點擊進入論壇

發(fā)表評論 (321人查看,0條評論)
請自覺遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴禁發(fā)布色情、暴力、反動的言論。
昵稱:
最新評論
------分隔線----------------------------

其它欄目

· 建站教程
· 365學(xué)習(xí)

業(yè)務(wù)咨詢

· 技術(shù)支持
· 服務(wù)時間:9:00-18:00
365建站網(wǎng)二維碼

Powered by 365建站網(wǎng) RSS地圖 HTML地圖

copyright © 2013-2024 版權(quán)所有 鄂ICP備17013400號