|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2018-03-29 17:11 UTC] cmb@php.net
-Package: timezonedb
+Package: Date/time related
[2021-04-07 15:59 UTC] cmb@php.net
-Status: Open
+Status: Closed
-Assigned To:
+Assigned To: cmb
[2021-04-07 15:59 UTC] cmb@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Thu Oct 30 22:00:01 2025 UTC |
Description: ------------ fetch_timezone_offset does a linear search through the list of time transitions. Many timezones have a rather large number of transitions. Eg, Pacific time appears to have ~180 transitions. One possible solution might be to do a binary search rather than a linear search of the list of times. But a simpler solution could be to do a search backwards in the array: most people probably do manipulation of recent rather than old dates I tested this using HHVM, which uses the same upstream timezone code as PHP. Test script: --------------- <? date_default_timezone_set("America/Los_Angeles"); for ($i = 0; $i < 10000000; $i ++) date('I'); Expected result: ---------------- figuring out the DST rules should not be a perf issue Actual result: -------------- perf record shows timelib_get_time_zone_info taking a substantial amount of time