【问题标题】:PHP at CLI with cyrillic content?带有西里尔文内容的 CLI 中的 PHP?
【发布时间】:2015-05-11 09:24:22
【问题描述】:


我需要一个支持西里尔字符的 php 脚本。
/etc/php5/cli/PHP.ini:

default_charset = "UTF-8"

我的脚本从 MySQL 表中询问值(排序规则:utf8_general_ci)并将这些值写入 php 变量中。

脚本的输出只是“???”而不是文本,所以我猜仍然存在错误字符集的问题,如果那个 MySQL 值是普通的拉丁文本,那么该脚本的输出就可以了。

网站本身可以很好地使用西里尔字母,只有在命令行我有这些问题。

我必须在命令行中提供一些额外的选项吗?

【问题讨论】:

  • 您应该更好地解释 cli 的问题所在:您使用的是哪个控制台?是输入问题还是输出问题?什么时候出现问题?
  • 当然,抱歉,我添加了输出
  • 你是否也在php.ini中设置了mbstring.internal_encoding = UTF-8
  • 之前没有,但结果和mbstring.internal_encoding = UTF-8一样
  • 你使用的是windows cmd.exe吗?还是在 mac 或 linux 上?

标签: php character-encoding cyrillic


【解决方案1】:

解决方案是指定从数据库发送数据时必须使用的字符集。
在我的脚本中添加以下行后,西里尔字符显示没有问题。 mysqli_set_charset($conn, 'utf8');

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多