# utf8_encode

(PHP 4, PHP 5, PHP 7, PHP 8)

utf8_encode — Convertit une chaîne ISO-8859-1 en UTF-8

Avertissement

Cette fonction est OBSOLÈTE à partir de PHP 8.2.0. Dépendre de cette fonction est fortement déconseillé.

### Description

#[\Deprecated]
utf8_encode(string `$string`): string

Cette fonction convertie la chaîne `string` depuis l'encodage `ISO-8859-1` vers `UTF-8`.

> Note:

> Cette fonction n'essaie pas de deviner l'encodage actuel de la chaîne de caractères fournie, elle suppose qu'elle est encodée en ISO-8859-1 (également connu sous le nom de "Latin 1") et la convertit en UTF-8. Puisque chaque séquence d'octets est une chaîne de caractères ISO-8859-1 valide, il n'y a jamais d'erreur, mais il n'en résultera pas une chaîne de caractères utile si un encodage différent était prévu.

> De nombreuses pages Web marquées comme utilisant l'encodage de caratère `ISO-8859-1` utilisent effectivement un encodage similaire à `Windows-1252`, et les navigateurs Web interpréterons les pages Web `ISO-8859-1` comme `Windows-1252`. Les caractéristiques supplémentaires de `Windows-1252` sont des caractères imprimables, tels que le signe euro (`€`) et les guillemets bouclés (`“` `”`), à la place de certains caractères de contrôle de l'`ISO-8859-1`. Cette fonction ne convertira pas ces caractères `Windows-1252` correctement. Utilisez une fonction différente si une conversion `Windows-1252` est nécessaire.

### Liste de paramètres

`string`

  Une chaîne ISO-8859-1.

### Valeurs de retour

Retour la version UTF-8 de `string`.

### Historique

Version | Description
--- | ---
8.2.0 | Cette fonction a été rendue obsolète.
7.2.0 | Cette fonction a été déplacée dans le cœur de PHP, auparavant, il était nécessaire d'installer l'extension XML pour l'utiliser.

### Exemples

Exemple #1 Exemple d'utilisation

`<?php
// Convertit la chaîne 'Zoë' de ISO 8859-1 à UTF-8
$iso8859_1_string = "\x5A\x6F\xEB";
$utf8_string = utf8_encode($iso8859_1_string);
echo bin2hex($utf8_string), "\n";
?>`

L'exemple ci-dessus va afficher :

    5a6fc3ab

### Notes

> Note: Dépréciation et alternatives

> Cette fonction est obsolète à partir de PHP 8.2.0 et sera supprimée dans une version future. Les utilisations existantes devraient être vérifiées et remplacées par des alternatives appropriées.

> Une fonctionnalité similaire peut être obtenue avec mb_convert_encoding(), qui prend en charge ISO-8859-1 et de nombreux autres encodages de caractères.

> `<?php
> $iso8859_1_string = "\xEB"; // 'ë' (e with diaeresis) in ISO-8859-1
> $utf8_string = mb_convert_encoding($iso8859_1_string, 'UTF-8', 'ISO-8859-1');
> echo bin2hex($utf8_string), "\n";
> $iso8859_7_string = "\xEB"; // the same string in ISO-8859-7 represents 'λ' (Greek lower-case lambda)
> $utf8_string = mb_convert_encoding($iso8859_7_string, 'UTF-8', 'ISO-8859-7');
> echo bin2hex($utf8_string), "\n";
> $windows_1252_string = "\x80"; // '€' (Euro sign) in Windows-1252, but not in ISO-8859-1
> $utf8_string = mb_convert_encoding($windows_1252_string, 'UTF-8', 'Windows-1252');
> echo bin2hex($utf8_string), "\n";
> ?>`

> L'exemple ci-dessus va afficher :

>     c3ab
>     cebb
>     e282ac

> D'autres options peuvent être disponibles en fonction des extensions installées, telles que UConverter::transcode() et iconv().

> Les exemples suivants donnent tous le même résultat :

> `<?php
> $iso8859_1_string = "\x5A\x6F\xEB"; // 'Zoë' in ISO-8859-1
> $utf8_string = utf8_encode($iso8859_1_string);
> echo bin2hex($utf8_string), "\n";
> $utf8_string = mb_convert_encoding($iso8859_1_string, 'UTF-8', 'ISO-8859-1');
> echo bin2hex($utf8_string), "\n";
> $utf8_string = UConverter::transcode($iso8859_1_string, 'UTF8', 'ISO-8859-1');
> echo bin2hex($utf8_string), "\n";
> $utf8_string = iconv('ISO-8859-1', 'UTF-8', $iso8859_1_string);
> echo bin2hex($utf8_string), "\n";
> ?>`

> L'exemple ci-dessus va afficher :

>     5a6fc3ab
>     5a6fc3ab
>     5a6fc3ab
>     5a6fc3ab

### Voir aussi

- utf8_decode() - Convertit une chaîne UTF-8 en ISO-8859-1, en remplaçant les caractères invalides ou non représentables.
- mb_convert_encoding() - Convertir une chaîne d'un codage de caractères à un autre
- UConverter::transcode() - Convertit une chaîne d'un jeu de caractères à un autre
- iconv() - Convertit une chaîne de caractères à partir d'un encodage vers un autre