htmlentities() 结合 mail() 在涉及特殊字符时不显示任何内容

htmlentities() combined with mail() shows nothing when special characters involved

经过一番研究,我找不到答案。我正在尝试保护联系表格,但是当我在消息中使用带有特殊字符的 htmlentities() 函数时,消息根本不显示。所以文本来自 a ,当我只输入 ASCII 文本时,脚本可以完美运行。目前我开始使用非ASCII字符,没有内容可以显示...

function secure($data) {
  $data = trim($data);
  $data = stripslashes($data);
  $data = htmlentities($data, ENT_HTML5, "UTF-8");
  return $data;
}
$info = secure($a);
$content = 'bla bla bla'.$info.'bla bla bla';
echo $content;

假设我的文字是:

Ce n’est pas une blague David, ton programme a réellement fonctionné et je suis là. » Dit Prélude. Et suivit une longue explication de Prélude quant à son existence. Comment avait-il fait pour sortir de l’ordinateur de David pour s’installer sur Internet, et de ce fait sur tout les ordinateurs reliés à Internet. Les explications continuèrent pendant une bonne heure. David laissait parler Prélude. Personne n’intervenait. Tout le monde présent, généraux, informaticiens, simples gardes, tous étaient stupéfiaient.

根本行不通...

实际上,这是一个编码问题...我将 HTML 页面的元数据更改为 UTF-8,并且神奇地起作用了!!

<meta charset="utf-8">

谢谢大家。 卡塞勒。