Heim >Backend-Entwicklung >PHP-Problem >So konvertieren Sie einen String in PHP in utf8

So konvertieren Sie einen String in PHP in utf8

藏色散人
藏色散人Original
2021-05-11 09:29:192722Durchsuche

So konvertieren Sie einen String in utf8 in PHP: Erstellen Sie zunächst eine PHP-Beispieldatei Das ist es.

So konvertieren Sie einen String in PHP in utf8

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

PHP konvertiert eine Zeichenfolge von GBK in den UTF8-Zeichensatz über iconv

1 Einführung in iconv()
Das iconv Die Funktion kann Dateien von einem bekannten Zeichensatz in einen anderen bekannten Zeichensatz 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 einen Fehler, wenn das Zeichen „-“ in gb2312 konvertiert wird. Die Lösung besteht darin, „//IGNORE“ nach der zu konvertierenden Codierung hinzuzufügen, also nach dem zweiten Parameter von Die iconv-Funktion lautet wie folgt:

Der Code lautet wie folgt:

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

ignore bedeutet, dass Fehler während der Konvertierung ignoriert werden. Ohne den Ignorierparameter können nicht alle Zeichenfolgen gespeichert werden, die diesem Zeichen folgen.
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;); //得到设定编码的字符串长度 
?>

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

Der 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; 
?>

Wenn Ihre PHP-Datei GB groß ist, kann der folgende Code funktionieren:

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; 
?>

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

Empfohlenes Lernen: „PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo konvertieren Sie einen String in PHP in utf8. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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