PHPのお勉強!

PHP TOP

DateTimeZone::listIdentifiers

timezone_identifiers_list

(PHP 5 >= 5.2.0, PHP 7, PHP 8)

DateTimeZone::listIdentifiers -- timezone_identifiers_listすべてのタイムゾーン識別子を含む配列を返す

説明

オブジェクト指向型

public static DateTimeZone::listIdentifiers(int $timezoneGroup = DateTimeZone::ALL, ?string $countryCode = null): array

手続き型

timezone_identifiers_list(int $timezoneGroup = DateTimeZone::ALL, ?string $countryCode = null): array

パラメータ

timezoneGroup

DateTimeZone のクラス定数のいずれか (または定数の組み合わせ)。

countryCode

2 文字の (大文字の) ISO 3166-1 互換の国コード。

注意: このオプションを使用するのは、timezoneGroupDateTimeZone::PER_COUNTRY を設定した場合のみです。

戻り値

成功した場合に、タイムゾーンの識別子を含んだ配列を返します。 期限切れになっていない識別子のみを返します。 期限切れになったものも含めて、全ての識別子を取得するには、 timezoneGroup の値に DateTimeZone::ALL_WITH_BC を指定します。

変更履歴

バージョン 説明
8.0.0 これより前のバージョンでは、失敗時に false を返していました。
7.1.0 countryCode は、nullable になりました。

例1 DateTimeZone::listIdentifiers() の例

<?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

例2 特定の地域を指定して、識別子の一覧を取得する

<?php
$timezone_identifiers
= DateTimeZone::listIdentifiers( DateTimeZone::ASIA );
for (
$i=0; $i < 5; $i++) {
echo
"$timezone_identifiers[$i]\n";
}
?>

上の例の出力は、 たとえば以下のようになります。

Asia/Aden
Asia/Almaty
Asia/Amman
Asia/Anadyr
Asia/Aqtau

例3 複数の地域を指定して、識別子の一覧を取得する

<?php
$timezone_identifiers
= DateTimeZone::listIdentifiers( DateTimeZone::ASIA | DateTimeZone::PACIFIC );
echo
join( ', ', $timezone_identifiers );
?>

上の例の出力は、 たとえば以下のようになります。

Asia/Aden, Asia/Almaty, Asia/Amman, Asia/Anadyr, Asia/Aqtau, Asia/Aqtobe,
Asia/Ashgabat, Asia/Atyrau, Asia/Baghdad, Asia/Bahrain, Asia/Baku,
Asia/Bangkok, Asia/Barnaul, Asia/Beirut, Asia/Bishkek, Asia/Brunei,
Asia/Chita, Asia/Choibalsan, Asia/Colombo, Asia/Damascus, Asia/Dhaka,
Asia/Dili, Asia/Dubai, Asia/Dushanbe, Asia/Famagusta, Asia/Gaza, Asia/Hebron,
Asia/Ho_Chi_Minh, Asia/Hong_Kong, Asia/Hovd, Asia/Irkutsk, Asia/Jakarta,
Asia/Jayapura, Asia/Jerusalem, Asia/Kabul, Asia/Kamchatka, Asia/Karachi,
Asia/Kathmandu, Asia/Khandyga, Asia/Kolkata, Asia/Krasnoyarsk,
Asia/Kuala_Lumpur, Asia/Kuching, Asia/Kuwait, Asia/Macau, Asia/Magadan,
Asia/Makassar, Asia/Manila, Asia/Muscat, Asia/Nicosia, Asia/Novokuznetsk,
Asia/Novosibirsk, Asia/Omsk, Asia/Oral, Asia/Phnom_Penh, Asia/Pontianak,
Asia/Pyongyang, Asia/Qatar, Asia/Qostanay, Asia/Qyzylorda, Asia/Riyadh,
Asia/Sakhalin, Asia/Samarkand, Asia/Seoul, Asia/Shanghai, Asia/Singapore,
Asia/Srednekolymsk, Asia/Taipei, Asia/Tashkent, Asia/Tbilisi, Asia/Tehran,
Asia/Thimphu, Asia/Tokyo, Asia/Tomsk, Asia/Ulaanbaatar, Asia/Urumqi,
Asia/Ust-Nera, Asia/Vientiane, Asia/Vladivostok, Asia/Yakutsk, Asia/Yangon,
Asia/Yekaterinburg, Asia/Yerevan, Pacific/Apia, Pacific/Auckland,
Pacific/Bougainville, Pacific/Chatham, Pacific/Chuuk, Pacific/Easter,
Pacific/Efate, Pacific/Fakaofo, Pacific/Fiji, Pacific/Funafuti,
Pacific/Galapagos, Pacific/Gambier, Pacific/Guadalcanal, Pacific/Guam,
Pacific/Honolulu, Pacific/Kanton, Pacific/Kiritimati, Pacific/Kosrae,
Pacific/Kwajalein, Pacific/Majuro, Pacific/Marquesas, Pacific/Midway,
Pacific/Nauru, Pacific/Niue, Pacific/Norfolk, Pacific/Noumea,
Pacific/Pago_Pago, Pacific/Palau, Pacific/Pitcairn, Pacific/Pohnpei,
Pacific/Port_Moresby, Pacific/Rarotonga, Pacific/Saipan, Pacific/Tahiti,
Pacific/Tarawa, Pacific/Tongatapu, Pacific/Wake, Pacific/Wallis

例4 特定の国をひとつ指定して、識別子の一覧を取得する

<?php
$timezone_identifiers
= DateTimeZone::listIdentifiers( DateTimeZone::PER_COUNTRY, "UA" );
foreach(
$timezone_identifiers as $identifier ) {
echo
"$identifier\n";
}
?>

上の例の出力は、 たとえば以下のようになります。

Europe/Kyiv
Europe/Simferopol
Europe/Uzhgorod
Europe/Zaporozhye

参考

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top