htmlentities和法国人物

时间:2012-11-27 03:46:59

标签: php

我试图在表单中转义一些用户输入。

if( !empty($_SESSION['descr']) )
{
    $descr = htmlentities($_SESSION['descr']);
    $descr = stripslashes($descr);
    $descr = html_entity_decode($descr); 

    echo"<textarea cols=\"50\" rows=\"10\" name=\"descr\" >".$descr."</textarea>";
}
else
{
    echo "<textarea cols=\"50\" rows=\"10\" name=\"descr\" ></textarea>";
}

我首先没有使用html_entity_decode(),然后我意识到如果用户放了一些法语字符,那么它将无法正确显示它们。 是否可以像html_entity_decode()一样使用它?

1 个答案:

答案 0 :(得分:0)

您应该将字符串的编码更改为ISO-8859-15,它会拾取LATIN-1未命中的字符(即法语字符):

$descr = htmlentities($desc,ENT_COMPAT,'ISO-8859-15');

ENT_COMPAT可能不是您要查找的标志,但您可以在manual中找到副标题。