-
Latest Version
PHP 8.5.9 LATEST
-
Review by
-
Operating System
Mac OS X
-
User Rating
Click to vote -
Author / Product
-
Filename
php-src-php-8.5.9.tar.gz
-
MD5 Checksum
123e88b8d6c88374e05a498916eeaf92
PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML.
Instead of lots of commands to output HTML (as seen in C or Perl), pages contain HTML with embedded code that does "something" (in this case, output "Hi, I'm a PHP script!"). The code is enclosed in special start and end processing instructions that allow you to jump into and out of "PHP mode."
What distinguishes PHP for macOS from something like client-side JavaScript is that the code is executed on the server, generating HTML which is then sent to the client.
The client would receive the results of running that script, but would not know what the underlying code was. You can even configure your web server to process all your HTML files with PHP, and then there's really no way that users can tell what you have up your sleeve.
The best things in using PHP are that it is extremely simple for a newcomer, but offers many advanced features for a professional programmer. Don't be afraid reading the long list of PHP's features.
You can jump in, in a short time, and start writing simple scripts in a few hours.
How to Use
Install PHP via Homebrew with brew install php
Verify installation using php -v
Configure Apache or Nginx to use PHP
Test with a phpinfo() script in your web server
Use Composer to manage PHP dependencies
Write and run PHP scripts in Terminal or browser
Edit scripts using any code editor like VS Code
Update PHP using brew upgrade php
Use php -S localhost:8000 for local testing
System Requirements
- macOS 10.15 (Catalina) or later
- At least 4 GB RAM (8 GB recommended)
- Homebrew package manager
- Command Line Tools for Xcode
- Internet connection for installation
- Easy installation with Homebrew
- Native macOS support for Apache
- Strong community and documentation
- Compatible with popular IDEs
- Great for local web development
- Older macOS may lack PHP support
- Configuration can be complex
- Built-in PHP deprecated in new macOS
- Performance not optimized by default
- Compatibility issues with some extensions
What's new in this version:
Core:
- Fixed bug GH-22290 (AST pretty printing does not correctly handle strings containing NUL)
- Fixed bug GH-22206 (missing return in global register detection)
- Lock unmodified readonly properties for modification after clone-with
BCMath:
- Fixed GHSA-x692-q9x7-8c3f (Out-of-bounds write in bccomp())
Calendar:
- Fixed bug GH-22602 (gregoriantojd() and juliantojd() integer overflow with INT_MAX year).
Date:
- Update timelib to 2022.17
- Fixed bug GH-19803 (Parsing a string with a single white space does create an error).
- Fixed Unix timestamps in February of the year 0 are misparsed with @-notation.
- Fixed bug GH-11310 (__debugInfo does nothing on userland classes extending Date classes).
DBA:
- Fixed OOB read on malformed length field in dba flatfile handler
DOM:
- Fixed bug GH-22570 (Stack overflow when serializing a deeply nested DomXMLDocument)
- Fixed getElementsByClassName() item() returning the wrong element on random access
Exif:
- Fixed bug GH-11020 (exif_read_data() emits a spurious "Illegal IFD size" warning when an IFD is not followed by a next-IFD offset).
GD:
- Upgrade libgd
Hash:
- Fixed bug GH-18173 (ext/hash relies on implementation-defined malloc alignment).
ODBC:
- Fixed bug GH-22668 (Heap buffer over-read when a column value exceeds the driver-reported display size).
Opcache:
- Fixed bug GH-22158 (Tracing JIT dispatches the observer begin handler through the wrong run_time_cache slot on megamorphic calls).
- Fixed bug GH-22443 (Tracing JIT SIGSEGV on megamorphic dynamic calls from an undereferenced run_time_cache map_ptr offset).
- Fixed bug GH-21770 (Infinite recursion in property hook getter in opcache preloaded trait).
OpenSSL:
- Fixed timeout for supplemental read at end of a blocking stream in SSL stream wrapper.
Intl:
- Fixed Locale::lookup() and locale_lookup() to return NULL instead of the fallback locale when a language tag cannot be canonicalized.
- Fixed memory leaks when calling Collator::__construct() or Spoofchecker::__construct() twice.
- Fixed memory leak when calling IntlListFormatter::__construct() twice.
- Fixed IntlChar methods leaving stale global error state after successful calls.
PDO_ODBC:
- Fixed bug GH-20726 (Crash with ODBC connection pooling when the DSN carries no credentials).
- Fixed bug GH-22667 (Heap buffer over-read when a column value exceeds the driver-reported display size).
- Fixed bug GH-22666 (Heap buffer overflow when an output parameter value is longer than the declared maxlen).
- Fixed bug GH-22665 (Out-of-bounds write when the ODBC driver reports a diagnostic message length beyond the error buffer).
PGSQL:
- Fixed GHSA-7qpv-r5mr-78m4 (SQL injection via E'...' backslash breakout)
Phar:
- Fixed inconsistent handling of the magic ".phar" directory. Paths such as "/.phar" remain protected, while non-magic paths that merely start with ".phar" are handled consistently across file and directory creation, copying, ArrayAccess, stream lookup, directory iteration and extraction.
- Fixed GHSA-vc5h-9ppw-p5f3 (Crash via recursive symlinks)
PHPDBG:
- Fixed bug GH-17387 (Trivial crash in phpdbg lexer).
- Fixed fleaked lowercased lookup keys in phpdbg_resolve_opline_break.
- Fixed off-by-one in phpdbg_safe_class_lookup() causing class lookups to always fail during phpdbg's signal-safe interruption path.
Reflection:
- Fixed bug GH-22324 (Ignore leading namespace separator in ReflectionParameter::__construct()).
- Fixed bug GH-22441 (ReflectionClass::hasProperty() and getProperty() ignore dynamic properties shadowing a private parent property).
- Fixed bug GH-22658 (ReflectionConstant::__toString() with a string value with null bytes truncates output).
- Fixed bug GH-22683 (Reflection(Class)Constant::__toString() should not warn on NAN conversions).
- Fixed bug GH-22681 (Reflection*::__toString() truncates on null bytes).
Session:
- Fixed bug GH-21314 (Different session garbage collector behavior between PHP 8.3 and PHP 8.5).
SPL:
- Fix class_parents for classes with leading slash in non-autoload mode.
- Ignore leading back-slash in class_parents(), class_implements(), and class_uses().
- Fixed bug GH-16217 (SplFileObject::fputcsv() on an uninitialized object segfaults).
Standard:
- Fixed bug GH-22395 (base_convert() outputs at most 64 characters)
- Fixed bug GH-22678 (Use-after-free in array_multisort() when the comparator mutates the array being sorted)
URI:
- Fixed behavior of UriWhatWgUrl wither methods with regards to empty opaque hosts
- Fixed bug GH-22628 (Percent-encoding of caret in WHATWG URL paths is not performed)
- Fixed bug GH-22629 (WHATWG Validation error incorrect with empty host and non-empty userinfo)
Zip:
- Fixed bug GH-22649 (ZipArchive::setCommentName() and setCommentIndex() could crash after overwriting an entry and resetting its inherited unchanged comment)
- Fixed bug GH-21705 (ZipArchive::getFromIndex() ignores ZipArchive::FL_UNCHANGED for deleted entries)
OperaOpera 134.0 Build 5954.46
PhotoshopAdobe Photoshop CC 2026 27.9.1
OKXOKX - Buy Bitcoin or Ethereum
WPS OfficeWPS Office
Adobe AcrobatAdobe Acrobat Pro 2026.001.21771
CleamioCleamio 3.4.0
MalwarebytesMalwarebytes 5.25.2
TradingViewTradingView - Track All Markets
CleanMyMacCleanMyMac X 5.2.10
AdGuard VPNAdGuard VPN for Mac 2.9.0
Comments and User Reviews