Hypertext Preprocessor is a general-purpose programming language!

PHP for Mac

PHP 7.4.9

  -  13.88 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 7.4.9.


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 (Upgrade apache2handler's php_apache_sapi_get_request_time to return usec)

COM:
Fixed (BSTR to PHP string conversion not binary safe)
Fixed (DCOM does not work with Username, Password parameter)

Core:
Fixed (serialize() and unserialize() methods can not be called statically)
Fixed (Segfault in php_str_replace_common)
Fixed (Assertion failure if dumping closure with unresolved static variable)
Fixed (Assertion failure when assigning property of string offset by reference)
Fixed (HT iterators not removed if empty array is destroyed)
Fixed (Changing array during undef index RW error segfaults)
Fixed (Use after free if changing array during undef var during array write fetch)
Fixed (Use after free if string used in undefined index warning is changed)
Fixed (Public non-static property in child should take priority over private static)
Fixed (getimagesize function silently truncates after a null byte) (cmb)

Fileinfo:
Fixed (finfo_file crash (FILEINFO_MIME))

FTP:
- Fixed (ftp_size on large files)

Mbstring:
- Fixed (mb_strimwidth does not trim string)

Phar:
- Fixed (Use of freed hash key in the phar_parse_zipfile function)

Reflection:
- Fixed (::getStaticProperties() ignores property modifications)
- Fixed (::getStaticPropertyValue() throws on protected props)
- Fixed (Use after free when type duplicated into ReflectionProperty gets resolved)

Standard:
- Fixed (Can't copy() large 'data://' with open_basedir)
- Fixed (dns_check_record() always return true on Alpine)
- Fixed (array_walk() does not respect property types)