L'envoi d'e-mails contenant des caractères non anglais peut parfois entraîner un texte tronqué à la réception. Pour résoudre ce problème avec l'encodage des e-mails UTF-8, explorons le problème et sa solution.
Lors de l'envoi d'e-mails qui contiennent des caractères en dehors de l'alphabet anglais, tels que ä½™ç"Ÿä"ä", certains destinataires peuvent rencontrer un texte tronqué lors de leur réception. En effet, l'e-mail n'est pas correctement codé en UTF-8, le codage standard utilisé pour la plupart des langues autres que l'anglais.
Pour éviter tout texte tronqué, il est nécessaire de spécifier les en-têtes Content-Type et charset corrects dans l'e-mail. Ces en-têtes indiquent l'encodage utilisé pour le corps de l'e-mail.
Pour ajouter ces en-têtes en Perl à l'aide de Mail::Factory(), vous pouvez utiliser le code suivant :
$headers = "Content-Type: text/html; charset=UTF-8";
Si vous utilisez le fonction native mail(), le tableau $headers devient le quatrième paramètre :
mail($to, $subject, $message, $headers);
Pour PEAR Mail::factory(), le code serait be :
$smtp = Mail::factory('smtp', $params); $mail = $smtp->send($to, $headers, $body);
En incluant ces en-têtes dans l'e-mail, le client de messagerie du destinataire sera en mesure d'interpréter correctement les caractères non anglais, résolvant ainsi le problème de texte tronqué.
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!