PHP의 timezone_identifiers_list() 함수는 서버에서 사용할 수 있는 모든 시간대(timezone) 식별자를 숫자 인덱스가 포함된 배열 형태로 반환합니다. 이 함수는 DateTime 클래스의 listIdentifiers() 메서드와 동일한 기능을 수행하는 절차적(procedural) 방식의 함수입니다.
문법(Syntax)
timezone_identifiers_list($timezoneGroup, $countryCode)
매개변수(Parameters)
- $timezoneGroup (선택): 반환할 시간대 그룹을 지정합니다. 예를 들어 DateTimeZone::AFRICA(값 1)를 전달하면 아프리카 지역의 시간대만 반환됩니다.
- $countryCode (선택): ISO 3166-1 두 자리 국가 코드를 지정하면 해당 국가에 속한 시간대만 반환됩니다.
반환 값(Return)
timezone_identifiers_list() 함수는 성공 시 시간대 식별자들이 담긴 배열(array)을 반환하고, 실패 시 FALSE를 반환합니다.
예제 1
아래 예제는 DateTimeZone::listIdentifiers()와 timezone_identifiers_list() 함수를 각각 호출하여 동일한 결과가 출력되는 것을 보여줍니다 −
<?php
$timezone_identifiers = DateTimeZone::listIdentifiers();
for ($i = 0; $i < 5; $i++) {
echo "$timezone_identifiers[$i]\n";
}
echo "-------------------------------------------------\n";
$timezone_identifiers = timezone_identifiers_list();
for ($i = 0; $i < 5; $i++) {
echo "$timezone_identifiers[$i]\n";
}
?>
출력 결과
위 코드를 실행하면 다음과 같은 출력이 생성됩니다 −
Africa/Abidjan Africa/Accra Africa/Addis_Ababa Africa/Algiers Africa/Asmara ------------------------------------------------- Africa/Abidjan Africa/Accra Africa/Addis_Ababa Africa/Algiers Africa/Asmara
예제 2
이번에는 매개변수에 시간대 그룹 값(1 = DateTimeZone::AFRICA)을 전달하여, 아프리카 지역의 시간대만 조회하는 예제를 살펴보겠습니다 −
<?php print_r(timezone_identifiers_list(1)); ?>
출력 결과
그룹 매개변수를 지정하면 해당 지역의 시간대만 필터링되어 다음과 같이 출력됩니다 −
Array ( [0] => Africa/Abidjan [1] => Africa/Accra [2] => Africa/Addis_Ababa [3] => Africa/Algiers [4] => Africa/Asmara [5] => Africa/Bamako [6] => Africa/Bangui [7] => Africa/Banjul [8] => Africa/Bissau [9] => Africa/Blantyre [10] => Africa/Brazzaville [11] => Africa/Bujumbura [12] => Africa/Cairo [13] => Africa/Casablanca [14] => Africa/Ceuta [15] => Africa/Conakry [16] => Africa/Dakar [17] => Africa/Dar_es_Salaam [18] => Africa/Djibouti [19] => Africa/Douala [20] => Africa/El_Aaiun [21] => Africa/Freetown [22] => Africa/Gaborone [23] => Africa/Harare [24] => Africa/Johannesburg [25] => Africa/Juba [26] => Africa/Kampala [27] => Africa/Khartoum [28] => Africa/Kigali [29] => Africa/Kinshasa [30] => Africa/Lagos [31] => Africa/Libreville [32] => Africa/Lome [33] => Africa/Luanda [34] => Africa/Lubumbashi [35] => Africa/Lusaka [36] => Africa/Malabo [37] => Africa/Maputo [38] => Africa/Maseru [39] => Africa/Mbabane [40] => Africa/Mogadishu [41] => Africa/Monrovia [42] => Africa/Nairobi [43] => Africa/Ndjamena [44] => Africa/Niamey [45] => Africa/Nouakchott [46] => Africa/Ouagadougou [47] => Africa/Porto-Novo [48] => Africa/Sao_Tome [49] => Africa/Tripoli [50] => Africa/Tunis [51] => Africa/Windhoek )