2012/1/6 André Rømcke <a...@ez.no> > > On Tue, Dec 27, 2011 at 9:01 PM, Ferenc Kovacs <tyr...@gmail.com> wrote: >> >> >> >> On Tue, Dec 27, 2011 at 6:24 PM, Patrick ALLAERT <patrickalla...@php.net> >> wrote: >>> >>> 2011/12/27 Ilia Alshanetsky <i...@ilia.ws>: >>> > The change is inside 5.4 version which adjust breaks BC. >>> >>> I don't follow you here Ilia. >>> >>> As per https://wiki.php.net/rfc/releaseprocess: >>> * "Backward compatibility must be respected with the same major >>> releases, for example from 5.2 to 5.6." >>> * Going from x.y.z to x.y+1.z, it is ok to break *binary* >>> compatibility but "Backward compatibility must be kept". >>> >>> However: >>> >>> new DateTime("@{$_SERVER['REQUEST_TIME']}"); >>> >>> works in 5.3 but not in 5.4. >>> AFAIK, creating a DateTime object based on the REQUEST_TIME is not an >>> exotic thing. >>> For sure, the fix is easy, but that is not the point, it *will* >>> actually break applications. >>> >>> Did I miss something? >> >> >> I think that he is referring to that we already break BC with 5.4 (removing >> magic_quotes, register_globals, break/continue >> $var, allow_call_time_pass_reference, some deprecated session_ functions, >> safe_mode, etc. for a complete list >> see http://svn.php.net/viewvc/php/php-src/branches/PHP_5_4/UPGRADING?view=markup ) > > > > These are mostly removal of features, and most of these have been deprecated > for quite a while. > The REQUEST_TIME change however is a change of behaviour that has not been > warned about up front, which imo is a worse BC break then most of the rest. > And arguing for ignoring one bc break/bug/mistake because there are others > is.. well.. :) > > >> >> >> However I tend to agree with you, that this BC break isn't really worth it, >> we can see that there are common apps stumbling across this change, and >> albeit the new behavior can be useful for many people, they wouldn't really >> mind if we add this as a new variable imo. > > > > Great, so I do think most people agree that this can, and should be fixed > before 5.4 by instead expose microtime on a separate variable > called REQUEST_TIME_FLOAT. > > +1
Fixed in master and PHP_5_4 as per discussed/suggested by introducing $_SERVER['REQUEST_TIME_FLOAT']. -- Patrick -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php