méthode php pour convertir une chaîne de caractères GBK en jeu de caractères UTF8 via iconv

怪我咯
Libérer: 2023-03-13 07:18:01
original
3154 Les gens l'ont consulté

PHP utilise iconv pour convertir la chaîne de GBK en UTF8 jeu de caractères . Les amis qui en ont besoin peuvent s'y référer.

1. Introduction à iconv()
La fonction iconv peut convertir un fichier de jeu de caractères connu en un autre fichier de jeu de caractères connu. Par exemple : convertissez de GB2312 en UTF-8.
La fonction iconv est construite en php5 et le jeu de caractères GB est activé par défaut.
2. Erreur iconv()
iconv fera une erreur lors de la conversion du caractère "-" en gb2312 La solution est d'ajouter "//IGNORE" après l'encodage qui doit être converti, qui est le deuxième. paramètre de la fonction iconv. Après. Comme suit :

Le code est le suivant :

iconv("UTF-8", "GB2312//IGNORE", $data)
Copier après la connexion

ignorer signifie ignorer les erreurs lors de la conversion. toutes les chaînes suivant ce caractère ne peuvent pas être enregistrées.
3. Exemple iconv()
Exemple 1 :

Le code est le suivant :

<?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;); //得到设定编码的字符串长度 
?>
Copier après la connexion

Exemple 2 :
Si votre fichier PHP est Encodage UTF-8, le code suivant peut être généré correctement :

Le code est le suivant :

<?php 
  $str=&#39;我爱百度&#39;; 
  $utf=&#39;&#39;; 
  for ($i=0;$i<strlen($str);$i++) $utf.=sprintf("%%%02X",ord(substr($str,$i,1))); 
  echo $utf; 
?>
Copier après la connexion

Si votre fichier PHP est en Go, alors le code suivant peut travail :

Le code est le suivant :

<?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; 
?>
Copier après la connexion

Dans le cas ci-dessus, la sortie du programme est :
%E6%88%91%E7%88% B1%E7%99 %BE%E5%BA%A6

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!