Accute accent MySQL - PHP - UTF-8


  • 我已将元字符集设置为UTF-8

    <meta charset="utf-8" />
    
  • 我已经将我的Notepad++编码设置为UTF-8,没有bom

  • 我已将MySql的数据库排序规则设置为ut8_general_ci

  • 我已将每个字段的排序规则设置为utf8_general_ci

我已经做了所有这些,但我仍然看不出指责的口音(é(。相反,我看到�...希望你能帮助我。谢谢!

确保在数据库上运行SET NAMES utf8

示例(使用PDO(:

$pdo = new PDO('mysql:host=127.0.0.1;dbname=mydb', 'root', '', array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));

还设置数据库连接的字符集。设置此参数将告诉数据库对象传递UTF-8编码的字符串,即使它们以其他方式存储在数据库中也是如此。当然,以相同的UTF-8格式存储数据会使传递速度更快。

// tells the mysqli connection to deliver UTF-8 encoded strings.
$db = new mysqli($dbHost, $dbUser, $dbPassword, $dbName);
$db->set_charset('utf8');
// tells the pdo connection to deliver UTF-8 encoded strings.
$dsn = "mysql:host=$dbHost;dbname=$dbName;charset=utf8";
$db = new PDO($dsn, $dbUser, $dbPassword);
// tells the mysql connection to deliver UTF-8 encoded strings.
$db = mysql_connect($dbHost, $dbUser, $dbPassword);
mysql_set_charset('utf8', $db);

更多…

最新更新