从命令行使用瑞典语字符的utf8问题

时间:2009-08-18 10:18:46

标签: php mysql apache encoding utf-8

我有一个脚本从数据库中获取字符串,将其拆分为单词并将单词写入数据库。当我通过http(使用apache web服务器)调用脚本时,它工作正常。它也适用于从Windows命令行运行它。但是,当我尝试从ubuntu中的命令行(shell)运行它时,所有瑞典语字符ÅÄÖ都被数据库中的AAO替换。很奇怪。

什么是apache告诉php我需要在命令行运行时告诉自己?

4 个答案:

答案 0 :(得分:2)

MySQL有various parameters处理客户端编码。将客户端字符集设置为UTF-8或数据库的字符集应该可以解决您的问题。

答案 1 :(得分:2)

您可以将phpinfo()放在脚本的顶部,打印所有环境变量,配置设置等。在命令行运行时与在apache下运行时比较输出。

答案 2 :(得分:0)

通常会有一个不同的php.ini文件在通过命令行运行时被使用。检查你是否有一个,以及有什么不同。

答案 3 :(得分:-1)

可能ubuntu不接受终端那种东西。尝试安装一个插件左右?

这并不奇怪,因为几乎所有的命令行都会遇到一些特殊字符的问题。你确定你真的需要吗?有没有其他方式来写它?我不知道因为我不是瑞典人。

Apache和PHP只支持那种chars ,,,没有什么可说的