php - 插入阿拉伯语文本 MySQL

标签 php mysql arabic

我正在尝试将阿拉伯文本存储到表格中,我搜索了很多但没有找到适合我的解决方案,所以这就是我得到的:

$en = "OK";
$ar = "حسناً";
$link->query("INSERT INTO words (en,ar) VALUES ($en,$ar)");

问题是当我插入它时,阿拉伯文本看起来像 Øسناً,我的表和 MySQL 的排序规则是 utf8_general_ci,我的数据库也是,我还有 mysql_query("SET NAMES 'utf8'"); mysql_query('SET CHARACTER SET utf8');,但它不起作用。

最佳答案

我自己最近也遇到了同样的问题。

这里有几点建议:

  • 所有属性必须设置为 ut8(排序规则与字符集不同)
  • 将文档保存为 UTF-8(如果您使用的是 Notepad++,则格式 -> 转换为 UFT-8)
  • PHP 和 HTML 中的 header 应设置为 UTF-8(HTML:<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 和 PHP:header('Content-Type: text/html; charset=utf-8');
  • 连接到数据库后,也在那里设置字符集 ti UTF-8,如下所示:$link->set_charset("utf8"); (连接后直接)
  • 还要确保您的数据库和表设置为 UTF-8,您可以这样做:

ALTER DATABASE databasename CHARACTER SET utf8 COLLATE utf8_unicode_ci; ALTER TABLE tablename CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;

请记住,一切都需要设置为 UFT-8 字符码,否则它会插入诸如“Øسناً”之类的内容。希望这对您有所帮助!

关于php - 插入阿拉伯语文本 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31459458/

相关文章:

mysql - 从 mysql 中获取许多分组值

ios - 对齐的阿拉伯语或波斯语文本或任何语言方向从右到左 - iOS

PHP mysql 更快的方法来选择语句以便以后更新?

php - 合并 2 个数组并对值求和(数字键)

mysql - 在 Sql 中将每 6 行转置为列 1、2、3 等的简单方法?

android - Android 中带有 ar-ae 和 ar-sa 语言环境的阿拉伯数字

某些设备中的 Android 阿拉伯语语言支持问题

php - 我可以合并 ArrayDataProvider 和 ActiveDataProvider 吗?

php - 如何在点击链接时刷新div内容而不重新加载整个页面?

MySQL: "recursive"更新行。均线示例