[php-src] Issue #20323: timezone_abbreviations_list does not show correct abbreviation for Asia/Colombo

From: Date: Tue, 28 Oct 2025 22:39:29 +0000
Subject: [php-src] Issue #20323: timezone_abbreviations_list does not show correct abbreviation for Asia/Colombo
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-251141@lists.php.net to get a copy of this message
Issue: https://github.com/php/php-src/issues/20323 Author: Slatery ### Description The following code: ```php $abbreviations = timezone_abbreviations_list(); foreach ( $abbreviations as $abbreviation => $timezones ) { foreach ( $timezones as $timezone ) { if ( $timezone['timezone_id'] === 'Asia/Colombo') { return $abbreviation; } } } <?php ``` Resulted in this output: ``` 'MMT' ``` But I expected this output instead: ``` 5:30 ``` As per IANA raw data, Asia/Colombo (Sri Lanka) is supposed to be showing the numeric abbreviation, however it instead shows the last text based abbreviation MMT which has not been used for over a century, and can be confused with the geographically close Myanmar Standard Time (abbreviated as MMT) which is an hour advanced of Colombo at +6:30. If a text based abbreviation must be used, then Sri Lankan Standard Time (SLST) would be the most up to date and correct abbreviation. ### PHP Version ```plain PHP 8.3.21 (cli) (built: May 9 2025 06:23:02) (NTS) Copyright (c) The PHP Group Zend Engine v4.3.21, Copyright (c) Zend Technologies with Zend OPcache v8.3.21, Copyright (c), by Zend Technologies ``` ### Operating System _No response_

« previous php.bugs (#251141) next »