Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 命令行中瑞典字符的utf8问题_Php_Mysql_Apache_Encoding_Utf 8 - Fatal编程技术网

Php 命令行中瑞典字符的utf8问题

Php 命令行中瑞典字符的utf8问题,php,mysql,apache,encoding,utf-8,Php,Mysql,Apache,Encoding,Utf 8,我有一个脚本,它从数据库中获取字符串,将其拆分为单词,然后将单词写入数据库。当我通过http(使用ApacheWeb服务器)调用脚本时,它工作得非常好。它还可以从windows命令行运行它。然而,当我试图在ubuntu中从命令行(shell)运行它时,数据库中所有的瑞典字符都被AAO替换。很奇怪 apache在告诉php什么,我需要在从命令行运行时自己告诉它?可能ubuntu不接受这种东西。是否尝试安装一个插件 这并不奇怪,因为几乎所有的命令行都有一些特殊字符的问题。你确定你真的需要吗?难道没有

我有一个脚本,它从数据库中获取字符串,将其拆分为单词,然后将单词写入数据库。当我通过http(使用ApacheWeb服务器)调用脚本时,它工作得非常好。它还可以从windows命令行运行它。然而,当我试图在ubuntu中从命令行(shell)运行它时,数据库中所有的瑞典字符都被AAO替换。很奇怪


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

可能ubuntu不接受这种东西。是否尝试安装一个插件

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


Apache和PHP只支持这种字符,,,没有什么可说的了

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

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

通常,通过命令行运行时会使用不同的
php.ini
文件。检查是否有,以及它们之间的区别。

我没有从命令行输入任何内容,我只是从那里执行脚本。我想让它从命令行运行的原因是我想从cron运行它。执行和输入会给你(几乎)相同的输出。这样做,两者都是utf8,但没有帮助。很棒的提示!有很多不同之处。例如,LANG在命令行上设置为en_US.UTF-8。apache中有以下内容:_SERVER[“HTTP_ACCEPT_LANGUAGE”]en-US,en;q=0.8_服务器[“HTTP_接受_字符集”]ISO-8859-1,utf-8;q=0.7,*;q=0.3