Maison  >  Article  >  développement back-end  >  Comment convertir des chaînes UTF-8 et ISO-8859-1 en PHP ?

Comment convertir des chaînes UTF-8 et ISO-8859-1 en PHP ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-02 09:05:03458parcourir

How to convert UTF-8 and ISO-8859-1 strings in PHP?

Conversion UTF-8 et ISO-88591 en PHP

Lorsque des scripts avec des encodages différents nécessitent une interaction, il devient crucial de convertir les caractères entre différents formats. PHP fournit plusieurs fonctions pour faciliter de telles conversions.

Conversion d'UTF-8 en ISO-88591

Pour convertir une chaîne UTF-8 en ISO-88591, vous pouvez utiliser iconv() ou mb_convert_encoding () fonctions. Ces fonctions nécessitent des extensions spécifiques : ext/iconv pour iconv() et ext/mbstring pour mb_convert_encoding().

<code class="php">$utf8 = 'ÄÖÜ'; // in a UTF-8 encoded file

// Using iconv()
$iso88591 = iconv('UTF-8', 'ISO-8859-1', $utf8);

// Using mb_convert_encoding()
$iso88591 = mb_convert_encoding($utf8, 'ISO-8859-1', 'UTF-8');</code>

Conversion d'ISO-88591 en UTF-8

Pour convertir un ISO- 88591 en UTF-8, vous pouvez également utiliser iconv() ou mb_convert_encoding().

<code class="php">$iso88591 = 'ÄÖÜ'; // in an ISO-8859-1 encoded file

// Using iconv()
$utf8 = iconv('ISO-8859-1', 'UTF-8', $iso88591);

// Using mb_convert_encoding()
$utf8 = mb_convert_encoding($iso88591, 'UTF-8', 'ISO-8859-1');</code>

Une alternative : utf8_encode() et utf8_decode()

Les utf8_encode() et utf8_decode () peuvent ne pas convenir à votre scénario spécifique car :

  • utf8_decode() convertit les caractères ISO-8859-1 codés avec UTF-8 en ISO-8859-1 à un octet, ce qui peut ne pas être le cas. soyez ce que vous voulez.
  • utf8_encode() encode les chaînes ISO-8859-1 en UTF-8, alors que vous avez besoin de la conversion inverse.

Par conséquent, en utilisant iconv() ou mb_convert_encoding () est plus approprié pour la conversion entre UTF-8 et ISO-88591.

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!

Déclaration:
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