MySQL 中的全局语言与 PHP


Global languages in MySQL with PHP

我们创建网站的意图是只使用英语,并使用英语对MySQL进行所有插入/删除。并在写入数据库时使用 PHP 转义字符串。

现在的情况是我们的网站有很多中文/德语/俄语用户,我们面临着将数据写入MySQL的问题 - PHP能够将数据写入数据库,但它会进行一些内部转换,例如将几个字符替换为不同的东西(例如。Plötzlich --> plq$tzlich).

但是,如果我转到phpMyAdmin并复制粘贴中文或任何其他语言字符串并插入它,请完全按原样编写。所以怀疑是PHP在写入数据库之前进行转换。

我们正在使它适用于所有语言,但这是我们第一次处理全球语言(MySQL和PHP)。

如果有任何专家可以分享一些信息,那将是伟大的和高度赞赏的。

  1. 我们有包含数据的MYSQL InnoDB数据库,我们如何进行转换以支持全球语言?
  2. 我们使用PHP将记录写入MySQL,并使用转义字符串(数据),然后将其写入数据库。我们认为 escape 不支持全局语言,它会进行一些转换。如何处理这个或我们应该使用的其他东西?
  3. 此转换是否会影响数据库中的现有数据?

如果我们在这方面得到一些专家的帮助,我们将不胜感激。

我会确保您的应用程序全部采用 UTF-8,包括所有数据库表。听起来有些部分不是 UTF-8。

你逃脱了谁的文字?也许像

http://www.w3schools.com/php/func_string_htmlentities.asp可以帮忙吗?其中所有字符都转义到 html 实体中。