> On Jun 19, 2025, at 11:08, Calvin Buckley <cal...@cmpct.info> wrote: > > On Jun 19, 2025, at 11:08 AM, Marc Bennewitz <marc@mabe.berlin> wrote: >> >> Hi, >> >> During the discussion about the year 2038 issue it turned out that maybe >> it's time to drop support for 32-bit of PHP completely. >> >> Based on that I have created an RFC to deprecate 32-bit build in 8.next and >> drop support for it in 9. >> >> RFC: https://wiki.php.net/rfc/drop_32bit_support > > I think the biggest arguments against this would be: > > - embedded systems; think of PHP in use for i.e. router web UIs. While I > suspect a lot of these are going to be i.e. AArch64/RV64 in the future, > there might be a long tail of existing systems. Of course, how many > would upgrade to PHP 9? > > - WebAssembly; I don't know how widespread the Memory64 proposal is yet. > We're using WebAssembly in the docs pages for runnable examples. > > And some niche cases like i.e. iSH (which emulates x86-32 on iOS). > > The other options include making zend_long always 64-bit and accept the > performance penalty for 32-bit, or making 32-bit best-effort rather than > providing any guarantees.
Last night, I was giving some thought to reviving Andrea’s Big Integer RFC[^1]. This is something I’ve wanted for a long time (especially for my ramsey/uuid library, among other things). Andrea had a work-in-progress PR[^2]. I’m not sure the current state of it. It’s from 2014 and was originally written for phpng. I had planned to start teasing out bits of it into a new branch based on the current master branch to see how far I could get with it. I wouldn’t mind some help with that, if anyone’s interested. :-) If we are able to finish what Andrea started, then we would not need to drop support for 32bit builds. Cheers, Ben [^1]: https://wiki.php.net/rfc/bigint [^2]: https://github.com/php/php-src/pull/876
signature.asc
Description: Message signed with OpenPGP