这些PHP mbstring设置有什么作用?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (41)

我试图弄清楚这些php.ini设置是干什么的。当它们设置为不同的值时会发生什么?他们什么时候需要?他们什么时候?

像往常一样,PHP手册不太有用。

提问于
用户回答回答于

重点是支持不同的字符集编码。有各种各样的编码(ASCII,ANSI,UTF-8等),每个编码都有不同的字符集和每个字符的字节数。你所看到的设置为不同的PHP函数指定默认编码。

PHP提供了许多功能,可以帮助您正确处理这些不同的编码。为了说明,请查看mb_strlen()vs strlen()。

除非你本地化你的应用程序的文本,或与具有不同编码的系统进行通信(包括您的数据库!),否则你可能不需要担心。

用户回答回答于

你可以将mbstring.language更改为你使用的任何语言。

语言

; language for internal character representation.
mbstring.language = Neutral ; Set default language to neutral(UTF-8) (default)
mbstring.language = English
mbstring.language = Japanese
mbstring.language = Korean  ;For Korean market later

http_input

; http input encoding.
mbstring.http_input = pass
mbstring.http_input = auto
mbstring.http_input = UTF-8
mbstring.http_input = UTF-8, SJIS, EUC-JP

http_output

; http output encoding. mb_output_handler must be
; registered as output buffer to function
mbstring.http_output = pass
mbstring.http_output = UTF-8

编码翻译

; enable automatic encoding translation accoding to
; mbstring.internal_encoding setting. Input chars are
; converted to internal encoding by setting this to On.
; Note: Do _not_ use automatic encoding translation for
;       portable libs/applications.
mbstring.encoding_translation = On

扫码关注云+社区