Hypertext Preprocessor is a general-purpose programming language!

PHP for Mac

PHP 8.1.15

  -  18.8 MB  -  Open Source

Sometimes latest versions of the software can cause issues when installed on older devices or devices running an older version of the operating system.

Software makers usually fix these issues but it can take them some time. What you can do in the meantime is to download and install an older version of PHP 8.1.15.


For those interested in downloading the most recent release of PHP for Mac or reading our review, simply click here.


All old versions distributed on our website are completely virus-free and available for download at no cost.


We would love to hear from you

If you have any questions or ideas that you want to share with us - head over to our Contact page and let us know. We value your feedback!

What's new in this version:

Apache:
- Fixed bug GH-9949 (Partial content on incomplete POST request)

Core:
- Fixed bug GH-10072 (PHP crashes when execute_ex is overridden and a __call trampoline is used from internal code)
- Fix GH-10251 (Assertion `(flag & (1<<3)) == 0' failed)
- Fix wrong comparison in block optimisation pass after opcode update

Date:
- Fixed bug GH-9891 (DateTime modify with unixtimestamp (@) must work like setTimestamp)
- Fixed bug GH-10218 (DateTimeZone fails to parse time zones that contain the "+" character)

Fiber:
- Fix assertion on stack allocation size

FPM:
- Fixed bug GH-9981 (FPM does not reset fastcgi.error_header)
- Fixed bug #67244 (Wrong owner:group for listening unix socket)

Hash:
- Handle exceptions from __toString in XXH3's initialization (nielsdos)

LDAP:
- Fixed bug GH-10112 (LDAP\Connection::__construct() refers to ldap_create())

MBString:
- Fixed: mb_strlen (and a couple of other mbstring functions) would wrongly treat 0x80, 0xFD, 0xFE, 0xFF, and certain other byte values as the first byte of a 2-byte SJIS character

Opcache:
- Fix inverted bailout value in zend_runtime_jit()
- Fix access to uninitialized variable in accel_preload()
- Fix zend_jit_find_trace() crashes
- Added missing lock for EXIT_INVALIDATE in zend_jit_trace_exit

Phar:
- Fix wrong flags check for compression method in phar_object.c (nielsdos)

PHPDBG:
- Fix undefined behaviour in phpdbg_load_module_or_extension()
- Fix NULL pointer dereference in phpdbg_create_conditional_breal()
- Fix GH-9710: phpdbg memory leaks by option "-h" (nielsdos)
- Fix phpdbg segmentation fault in case of malformed input (nielsdos)

Posix:
- Fix memory leak in posix_ttyname() (girgias)

Standard:
- Fix GH-10187 (Segfault in stripslashes() with arm64)
- Fix substr_replace with slots in repl_ht being UNDEF

TSRM:
- Fixed Windows shmget() wrt. IPC_PRIVATE

XMLWriter:
- Fix missing check for xmlTextWriterEndElement (nielsdos)