PHP-Methode zum Konvertieren einer Zeichenfolge vom GBK- in den UTF8-Zeichensatz über iconv

怪我咯
Freigeben: 2023-03-13 07:18:01
Original
3169 Leute haben es durchsucht

PHP verwendet iconv, um die Zeichenfolge vom GBK- in den UTF8--Zeichensatz zu konvertieren. Freunde, die es benötigen, können darauf verweisen.

1. Einführung in iconv()
Die iconv-Funktion kann eine bekannte Zeichensatzdatei in eine andere bekannte Zeichensatzdatei konvertieren. Beispiel: Konvertieren von GB2312 nach UTF-8.
Die iconv-Funktion ist in PHP5 integriert und der GB-Zeichensatz ist standardmäßig aktiviert.
2. iconv()-Fehler
iconv macht beim Konvertieren des Zeichens „-“ in gb2312 einen Fehler. Die Lösung besteht darin, nach der zu konvertierenden Codierung „//IGNORE“ hinzuzufügen Parameter der iconv-Funktion. Wie folgt:

Der Code lautet wie folgt:

iconv("UTF-8", "GB2312//IGNORE", $data)
Nach dem Login kopieren

Ignorieren bedeutet, dass Fehler während der Konvertierung ignoriert werden. Alle auf dieses Zeichen folgenden Zeichenfolgen können nicht gespeichert werden.
3. iconv()-Beispiel
Beispiel 1:

Der Code lautet wie folgt:

<?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;); //得到设定编码的字符串长度 
?>
Nach dem Login kopieren

Beispiel 2:
Wenn Ihre PHP-Datei ist UTF-8-Kodierung, dann kann der folgende Code korrekt ausgegeben werden:

Der Code lautet wie folgt:

<?php 
  $str=&#39;我爱百度&#39;; 
  $utf=&#39;&#39;; 
  for ($i=0;$i<strlen($str);$i++) $utf.=sprintf("%%%02X",ord(substr($str,$i,1))); 
  echo $utf; 
?>
Nach dem Login kopieren

Wenn Ihre PHP-Datei GB ist, kann der folgende Code korrekt ausgegeben werden Arbeit:

Der Code lautet wie folgt:

<?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; 
?>
Nach dem Login kopieren

Im obigen Fall lautet die Programmausgabe:
%E6%88%91%E7%88% B1%E7%99 %BE%E5%BA%A6

Das obige ist der detaillierte Inhalt vonPHP-Methode zum Konvertieren einer Zeichenfolge vom GBK- in den UTF8-Zeichensatz über iconv. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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