我有一些 UTF-8 格式的文本。我将其放入 MySQL 数据库,整理 utf8_general_ci
,然后通过 Net::Twitter 将其自动发布到 Twitter。
但是当我发布它时,即使 Twitter 本身似乎期望使用 UTF-8,通过输入页面中的内容类型,我得到了当 UTF-8 文本被误解时你得到的那些人工制品:é comes例如,输出为 É。
那么……这是哪里出了问题?我怎样才能确保它使旅行完好无损?
- 设置我的脚本以某种方式将所有文本视为 UTF-8?
- 确保我以 UTF-8 格式从数据库中提取它?
- 告诉 Net::Twitter 它以 UTF-8 格式发布?
最佳答案
您可能需要启用 mysql_enable_utf8
打开数据库连接时的属性:
my $dbh = DBI->connect("DBI:mysql:database=test;host=localhost",
"user", "password",
{ mysql_enable_utf8 => 1});
这将告诉 Perl 从数据库中检索到的字符串是 UTF-8 编码的。
关于mysql - 如何成功地将 UTF-8 文本从 MySQL 发布到 Twitter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4764105/