首頁 > 後端開發 > PHP問題 > php將字串轉為utf8的方法

php將字串轉為utf8的方法

藏色散人
發布: 2023-03-09 15:32:01
原創
2719 人瀏覽過

php將字串轉為utf8的方法:先建立一個PHP範例檔案;然後直接透過「iconv('GB2312', 'UTF-8', $str);」將字串的編碼從GB2312轉到UTF8即可。

php將字串轉為utf8的方法

本文操作環境:windows7系統、PHP7.1版,DELL G3電腦

PHP透過iconv將字串從GBK轉換為UTF8字元集

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:

程式碼如下:

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

範例2:
如果你的PHP檔案是UTF-8編碼的,那麼下面的程式碼就可以正確輸出:

程式碼如下:

<?php 
  $str=&#39;我爱百度&#39;; 
  $utf=&#39;&#39;; 
  for ($i=0;$i<strlen($str);$i++) $utf.=sprintf("%%%02X",ord(substr($str,$i,1))); 
  echo $utf; 
?>
登入後複製

如果你的PHP檔案是GB的,那麼下面的程式碼可以工作:

程式碼如下:

<?php 
  $str=&#39;我爱百度&#39;; 
  $str=iconv("GBK", "UTF-8", $str); 
  $utf=&#39;&#39;; 
  for ($i=0;$i<strlen($str);$i++) $utf.=sprintf("%%%02X",ord(substr($str,$i,1))); 
  echo $utf; 
?>
登入後複製

以上情況下,程式輸出的內容是:
我愛百度

推薦學習:《PHP影片教學

以上是php將字串轉為utf8的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板