函数名:IntlDateFormatter::setTimeZone()
适用版本:PHP 5 >= 5.5.0, PHP 7, PHP 8
用法:该方法用于设置IntlDateFormatter对象的时区。
语法:public bool IntlDateFormatter::setTimeZone ( mixed $timeZone )
参数:
- $timeZone:要设置的时区。可以是时区字符串(例如"Asia/Shanghai")或DateTimeZone对象。
返回值:成功时返回true,失败时返回false。
示例:
// 创建IntlDateFormatter对象
$formatter = new IntlDateFormatter('en_US', IntlDateFormatter::SHORT, IntlDateFormatter::SHORT);
// 设置时区为"Asia/Shanghai"
$formatter->setTimeZone('Asia/Shanghai');
// 格式化当前日期和时间
echo $formatter->format(new DateTime()); // 输出:12/31/2022, 11:59 PM
// 设置时区为"Europe/Paris"
$formatter->setTimeZone('Europe/Paris');
// 格式化当前日期和时间
echo $formatter->format(new DateTime()); // 输出:31/12/2022 23:59
在上面的示例中,我们首先创建了一个IntlDateFormatter对象,并将其语言设置为英语("en_US")。然后,我们使用setTimeZone()
方法分别将时区设置为"Asia/Shanghai"和"Europe/Paris"。最后,我们使用format()
方法格式化当前日期和时间,并将结果输出到屏幕上。可以看到,根据不同的时区设置,输出的日期和时间格式也会有所不同。