Re: hints and constraints
| From: | Rowan Collins | Date: | Thu, 05 Feb 2015 13:40:29 +0000 |
| Subject: | Re: hints and constraints | ||
| References: | 1 2 3 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-81924@lists.php.net to get a copy of this message | ||
Lester Caine wrote on 05/02/2015 12:33:
On 05/02/15 11:37, Andrea Faulds wrote:There is nothing new about PHP's userland int type being 64-bit on 64-bit platforms. For instance, raising 2 to the power of 62 returns exactly the same thing on every version of PHP back to 4.3.0: http://3v4l.org/VBMbvThe current description isn’t totally inaccurate, but I had considered renaming the RFC since “big integer support” implies we don’t already have support for big integers, though we do in the form of ext/gmp. A better title for the RFC might be “make PHP integer type be arbitrary-precision”. Still, it’s a minor issue at best.Current integer variable has a constrained value. 64bit 'fixes' have created a new set of rules to go with that.
The classic use of PHP is the LAMP stack: Linux, Apache, MySQL, PHP. Linux distributions have had good support for 64-bit architectures for years, so many, probably most, production installations of PHP are 64-bit builds.That code is also broken on 64-bit platforms, and has been for a decade. Actually, longer: x86 wasn’t the first architecture to support 64-bit, but it supporting it certainly increased the prominence of 64-bit computing.Broken in a way that was managable, but it is only in the last few years that windows itself has become 64bit although 32bit builds are still required in a number of marketplaces since 64bit ones don't work. That the transition has not been handled well applies everywhere!