字符串函数

PHP setlocale() 函数

主题:PHP 字符串参考上一页|下一页

说明

setlocale() 函数设置区域信息。

下表总结了该函数的技术细节。

返回值: 返回当前的区域设置,如果失败则返回 FALSE。 返回值取决于 PHP 运行的系统。
版本: PHP 4+

提示:在计算中,区域设置是指一组参数,这些参数定义了用户的语言、地区以及用户希望在其用户界面中看到的任何特殊偏好。


语法

setlocale() 函数的基本语法如下:

setlocale(category, locale);

下面的例子展示了 setlocale() 函数的作用。

<?php
// 设置语言环境
setlocale(LC_ALL, "en_US");

// 获取当前区域设置
echo setlocale(LC_ALL, 0);
?>

参数

setlocale() 函数接受以下参数。

参数 说明
category

必填。 它是一个命名常量,指定受区域设置影响的函数的类别。 可用的常量有:

  • LC_ALL 为以下所有类别的函数设置本地化规则。
  • LC_COLLATE 进行字符串比较,参见 strcoll()
  • LC_CTYPE 进行字符分类和转换,见strtoupper().
  • LC_MONETARY 用于货币表示,请参阅 localeconv()
  • LC_NUMERIC 用于数字表示,请参阅 localeconv()
  • LC_TIME 表示日期和时间,参见 strftime().
  • LC_MESSAGES 用于系统响应。
locale

必填。 指定将语言环境信息设置到的地区。 它可以是字符串或数组。 也可以传递多个语言环境字符串。

  • 如果 locale 为 NULL 或空字符串"",则 locale 名称将根据与上述类别同名的环境变量的值设置,或者从"LANG"设置。
  • 如果 locale 为"0",则 locale 设置不受影响,仅返回当前设置。
  • 如果语言环境是一个数组或后跟其他参数,则尝试将每个数组元素或参数设置为新的语言环境,直到成功。 如果某个语言环境在不同系统上以不同的名称已知,或者用于为该系统上可能不可用的语言环境提供后备,这将非常有用。

更多示例

这里有更多示例展示了 setlocale() 函数的实际工作原理:

以下示例打印根据区域设置格式化的日期。

<?php
// 将语言环境设置为荷兰语
setlocale(LC_ALL, "nl_NL");

// 根据地区输出日期
echo strftime("%A %e %B %Y", mktime(0, 0, 0, 04, 11, 2020));
?>
Advertisements