DateTimeZone::listIdentifiers()
timezone_identifiers_list
(PHP 5 >= 5.2.0, PHP 7)
返回一个包含了所有时区标示符的索引数组。
说明
面向对象风格public static DateTimeZone::listIdentifiers([int $what= DateTimeZone::ALL[,string $country=NULL]]): array
过程化风格
timezone_identifiers_list([int $what= DateTimeZone::ALL[,string $country=NULL]]): array
参数
- $what
DateTimeZone类中的常量之一。
- $country
由两个字母组成,ISO 3166-1 兼容的国家代码。
Note:只有当$what被设置为
DateTimeZone::PER_COUNTRY
时,该选项才会被使用。
返回值
成功,返回数组,失败则返回FALSE
.
更新日志
版本 | 说明 |
---|---|
5.3.0 | 添加可选的$what和$country参数。 |
范例
Example #1timezone_identifiers_list()函数的范例:
<?php $timezone_identifiers = DateTimeZone::listIdentifiers(); for ($i=0; $i < 5; $i++) { echo "$timezone_identifiers[$i]\n"; } ?>
以上例程的输出类似于:
Africa/Abidjan Africa/Accra Africa/Addis_Ababa Africa/Algiers Africa/Asmara
参见
timezone_abbreviations_list()
别名 DateTimeZone::listAbbreviations
Even though the manual currently says that the first parameter has to be "One of DateTimeZone class constants", you may actually combine these constants: <?php $a = DateTimeZone::listIdentifiers(DateTimeZone::AFRICA); //gives africa time zones $b = DateTimeZone::listIdentifiers(DateTimeZone::AMERICA); //gives american time zones $c = DateTimeZone::listIdentifiers(DateTimeZone::AFRICA | DateTimeZone::AMERICA); //gives both african and american time zones ?> Be sure to use |, not ||.
Beware that the ISO 3166-1 country code passed to second parameter $country has to be in capital letters (eg. 'US', 'DE', ...). Passing the country code in lower case like 'us' or 'de' will not return the failure-value false but just an empty array.