UTF-8 现在是 Web 应用程序事实上的标准,但是 PHP 这不是 PHP 的默认编码(直到 6.0)。大多数服务器默认设置为 ISO-8859-1 编码。
如何重载 .htaccess
中的默认设置以确保 UTF-8、区域设置等一切正常? Web 服务器、Unix 操作系统的任何选项?
是否有这些设置的完整列表?例如。 mbstring
选项、iconv
设置、区域设置等我应该为每个多语言项目设置吗?任何预定义的 .htaccess
作为示例?
(在我的特殊情况下,我需要设置语言:英语、荷兰语和俄语。服务器位于乌克兰)。
最佳答案
.htaccess
中一些有用的选项:
########################################
# Locale settings
########################################
# See: http://php.net/manual/en/timezones.php
php_value date.timezone "Europe/Amsterdam"
SetEnv LC_ALL nl_NL.UTF-8
########################################
# Set up UTF-8 encoding
########################################
AddDefaultCharset UTF-8
AddCharset UTF-8 .php
php_value default_charset "UTF-8"
php_value iconv.input_encoding "UTF-8"
php_value iconv.internal_encoding "UTF-8"
php_value iconv.output_encoding "UTF-8"
php_value mbstring.internal_encoding UTF-8
php_value mbstring.http_output UTF-8
php_value mbstring.encoding_translation On
php_value mbstring.func_overload 6
# See also php functions:
# mysql_set_charset
# mysql_client_encoding
# database settings
#CREATE DATABASE db_name
# CHARACTER SET utf8
# DEFAULT CHARACTER SET utf8
# COLLATE utf8_general_ci
# DEFAULT COLLATE utf8_general_ci
# ;
#
#ALTER DATABASE db_name
# CHARACTER SET utf8
# DEFAULT CHARACTER SET utf8
# COLLATE utf8_general_ci
# DEFAULT COLLATE utf8_general_ci
# ;
#ALTER TABLE tbl_name
# DEFAULT CHARACTER SET utf8
# COLLATE utf8_general_ci
# ;
关于php - 准备 PHP 应用程序以使用 UTF-8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6987929/