从MySQL数据库中获取带有特殊字母的字符串

时间:2017-10-26 11:50:16

标签: php html mysql html5

我有一个php变量,它的值是从HTML表单设置的。 变量的值是

$x = rueFrédéricMistral

您可能会看到它中有一个特殊字母(e_tilda)。

现在当我回复x时,它给了我以下内容:rueFr�d�ricMistral

我不确定如何回应原始名称。 我尝试了函数htmlspecialchars(),但它没有用。 在阅读时,我明白该功能不适合我的情况。

请有人帮我解决这个问题。

提前致谢。 Neeraj

2 个答案:

答案 0 :(得分:0)

你也可以试试这个

echo htmlentities($x);

你也可以用这个

用于服务器端

<?php
    header('Content-Type: text/html; charset=ISO-8859-1');
?>

用于客户端

    <head>
        <meta charset="utf-8">
    </head>
    <body>
        <?php
            $x = "rueFrédéricMistral";
            echo $x;
        ?>
    </body>

答案 1 :(得分:0)

至少有三个可能的原因:

  1. (很可能)你的html页面中有不正确的字符集定义,请确保你的页面<meta charset="utf8"/>部分内有<head>内容
  2. 您可能已为数据库连接定义了错误的字符集。请参阅您用于连接数据库的函数/库的文档
  3. (不太可能)数据库内的内容可能会自行中断,例如由于使用无效字符集进行迁移/插入。