We stand with Ukraine to help keep people safe. Join us

Server-side, cross-platform, HTML embedded scripting language.

5.0
Based on 7 user ratesRead reviews & comments
Free
Absolutely Free

PHP overview

This is a PHP module for the Apache Web server included in OS X. PHP is a server-side, cross-platform scripting language. PHP is a widely-used general-purpose scripting language that is especially suited for Web development and can be embedded into HTML.

What’s new in version 8.3.0

Updated on Nov 27 2023

Bcmath:
  • Fixed GH-11761 (removing trailing zeros from numbers) (jorgsowa)
CLI:
  • Added pdeathsig to builtin server to terminate workers when the master process is killed.
  • Fixed bug GH-11104 (STDIN/STDOUT/STDERR is not available for CLI without a script).
  • Implement GH-10024 (support linting multiple files at once using php -l).
Core:
  • Fix GH-11388 (Allow "final" modifier when importing a method from a trait).
  • Fixed bug GH-11406 (segfault with unpacking and magic method closure).
  • Fixed bug GH-9388 (Improve unset property and __get type incompatibility error message).
  • SA_ONSTACK is now set for signal handlers to be friendlier to other in-process code such as Go's cgo.
  • SA_ONSTACK is now set when signals are disabled.
  • Fix GH-9649: Signal handlers now do a no-op instead of crashing when executed on threads not managed by TSRM.
  • Added shadow stack support for fibers.
  • Fix bug GH-9965 (Fix accidental caching of default arguments with side effects).
  • Implement GH-10217 (Use strlen() for determining the class_name length).
  • Fix bug GH-8821 (Improve line numbers for errors in constant expressions).
  • Fix bug GH-10083 (Allow comments between & and parameter).
  • Zend Max Execution Timers is now enabled by default for ZTS builds on Linux.
  • Fix bug GH-10469 (Disallow .. in open_basedir paths set at runtime).
  • Fix bug GH-10168, GH-10582 (Various segfaults with destructors and VM return values).
  • Fix bug GH-10935 (Use of trait doesn't redeclare static property if class has inherited it from its parent).
  • Fix bug GH-11154 (Negative indices on empty array don't affect next chosen index).
  • Fix bug GH-8846 (Implement delayed early binding for classes without parents).
  • Fix bug #79836 (Segfault in concat_function).
  • Fix bug #81705 (type confusion/UAF on set_error_handler with concat operation).
  • Fix GH-11348 (Closure created from magic method does not accept named arguments).
  • Fix GH-11388 (Allow "final" modifier when importing a method from a trait).
  • Fixed bug GH-11406 (segfault with unpacking and magic method closure).
  • Fixed bug GH-11507 (String concatenation performance regression in 8.3).
  • Fixed GH-11488 (Missing "Optional parameter before required" deprecation on union null type).
  • Implement the #[\Override] attribute RFC.
  • Fixed bug GH-11601 (Incorrect handling of unwind and graceful exit exceptions).
  • Added zend_call_stack_get implementation for OpenBSD.
  • Add stack limit check in zend_eval_const_expr().
  • Expose time spent collecting cycles in gc_status().
  • Remove WeakMap entries whose key is only reachable through the entry value.
  • Resolve open_basedir paths on INI update.
  • Fixed oss-fuzz #60741 (Leak in open_basedir).
  • Fixed segfault during freeing of some incompletely initialized objects due to OOM error (PDO, SPL, XSL).
  • Introduced Zend guard recursion protection to fix __debugInfo issue.
  • Fixed oss-fuzz #61712 (assertion failure with error handler during binary op).
  • Fixed GH-11847 (DTrace enabled build is broken).
  • Fixed OSS Fuzz #61865 (Undef variable in ++/-- for declared property that is unset in error handler).
  • Fixed warning emitted when checking if a user stream is castable.
  • Fixed bug GH-12123 (Compile error on MacOS with C++ extension when using ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX).
  • Fixed bug GH-12189 (#[Override] attribute in trait does not check for parent class implementations).
  • Fixed OSS Fuzz #62294 (Unsetting variable after ++/-- on string variable warning).
  • Fixed buffer underflow when compiling memoized expression.
  • Fixed oss-fuzz #63802 (OP1 leak in error path of post inc/dec).
Curl:
  • Added Curl options and constants up to (including) version 7.87.
Date:
  • Implement More Appropriate Date/Time Exceptions RFC.
DOM:
  • Fix bug GH-8388 (DOMAttr unescapes character reference).
  • Fix bug GH-11308 (getElementsByTagName() is O(N^2)).
  • Fix #79700 (wrong use of libxml oldNs leads to performance problem).
  • Fix #77894 (DOMNode::C14N() very slow on generated DOMDocuments even after normalisation).
  • Revert changes to DOMAttr::$value and DOMAttr::$nodeValue expansion.
  • Fixed bug GH-11500 (Namespace reuse in createElementNS() generates wrong output).
  • Implemented DOMDocument::adoptNode(). Previously this always threw a "not yet implemented" exception.
  • Fixed bug GH-9628 (Implicitly removing nodes from \DOMDocument breaks existing references).
  • Added DOMNode::contains() and DOMNameSpaceNode::contains().
  • Added DOMElement::getAttributeNames().
  • Added DOMNode::getRootNode().
  • Added DOMElement::className and DOMElement::id.
  • Added DOMParentNode::replaceChildren().
  • Added DOMNode::isConnected and DOMNameSpaceNode::isConnected.
  • Added DOMNode::parentElement and DOMNameSpaceNode::parentElement.
  • Added DOMNode::isEqualNode().
  • Added DOMElement::insertAdjacentElement() and DOMElement::insertAdjacentText().
  • Added DOMElement::toggleAttribute().
  • Fixed bug GH-11792 (LIBXML_NOXMLDECL is not implemented or broken).
  • adoptNode now respects the strict error checking property.
  • Align DOMChildNode parent checks with spec.
  • Fixed bug #80927 (Removing documentElement after creating attribute node: possible use-after-free).
  • Fix various namespace prefix conflict resolution bugs.
  • Fix calling createAttributeNS() without prefix causing the default namespace of the element to change.
  • Fixed GH-11952 (Confusing warning when blocking entity loading via libxml_set_external_entity_loader).
  • Fix broken cache invalidation with deallocated and reallocated document node.
  • Fix compile error when php_libxml.h header is included in C++.
  • Fixed bug #47531 (No way of removing redundant xmlns: declarations).
Exif:
  • Removed unneeded codepaths in exif_process_TIFF_in_JPEG().
FFI:
  • Implement GH-11934 (Allow to pass CData into struct and/or union fields).
Fileinfo:
  • Upgrade bundled libmagic to 5.43.
  • Fix GH-11408 (Unable to build PHP 8.3.0 alpha 1 / fileinfo extension).
FPM:
  • The status.listen shared pool now uses the same php_values (including expose_php) and php_admin_value as the pool it is shared with.
  • Added warning to log when fpm socket was not registered on the expected path.
  • Fixed bug #76067 (system() function call leaks php-fpm listening sockets).
  • Fixed GH-12077 (PHP 8.3.0RC1 borked socket-close-on-exec.phpt).
GD:
  • Removed imagerotate "ignore_transparent" argument since it has no effect.
Intl:
  • Added pattern format error infos for numfmt_set_pattern.
  • Added MIXED_NUMBERS and HIDDEN_OVERLAY constants for the Spoofchecker's class.
  • Updated datefmt_set_timezone/IntlDateformatter::setTimezone returns type. (David Carlier).
  • Updated IntlBreakInterator::setText return type.
  • Updated IntlChar::enumCharNames return type.
  • Removed the BC break on IntlDateFormatter::construct which threw an exception with an invalid locale.
JSON:
  • Added json_validate().
LDAP:
  • Deprecate calling ldap_connect() with separate hostname and port.
LibXML:
  • Fix compile error with -Werror=incompatible-function-pointer-types and old libxml2.
MBString:
  • mb_detect_encoding is better able to identify the correct encoding for Turkish text.
  • mb_detect_encoding's "non-strict" mode now behaves as described in the documentation. Previously, it would return false if the same byte (for example, the first byte) of the input string was invalid in all candidate encodings. More generally, it would eliminate candidate encodings from consideration when an invalid byte was seen, and if the same input byte eliminated all remaining encodings still under consideration, it would return false. On the other hand, if all candidate encodings but one were eliminated from consideration, it would return the last remaining one without regard for how many encoding errors might be encountered later in the string. This is different from the behavior described in the documentation, which says: "If strict is set to false, the closest matching encoding will be returned." (Alex Dowad)
  • mb_strtolower, mb_strtotitle, and mb_convert_case implement conditional casing rules for the Greek letter sigma. For mb_convert_case, conditional casing only applies to MB_CASE_LOWER and MB_CASE_TITLE modes, not to MB_CASE_LOWER_SIMPLE and MB_CASE_TITLE_SIMPLE.
  • mb_detect_encoding is better able to identify UTF-8 and UTF-16 strings with a byte-order mark.
  • mb_decode_mimeheader interprets underscores in QPrint-encoded MIME encoded words as required by RFC 2047; they are converted to spaces. Underscores must be encoded as "=5F" in such MIME encoded words.
  • mb_encode_mimeheader no longer drops NUL (zero) bytes when QPrint-encoding the input string. This previously caused strings in certain text encodings, especially UTF-16 and UTF-32, to be corrupted by mb_encode_mimeheader.
  • Implement mb_str_pad() RFC.
  • Fixed bug GH-11514 (PHP 8.3 build fails with --enable-mbstring enabled).
  • Fix use-after-free of mb_list_encodings() return value.
  • Fixed bug GH-11992 (utf_encodings.phpt fails on Windows 32-bit).
mysqli:
  • mysqli_fetch_object raises a ValueError instead of an Exception.
Opcache:
  • Added start, restart and force restart time to opcache's phpinfo section.
  • Fix GH-9139: Allow FFI in opcache.preload when opcache.preload_user=root.
  • Made opcache.preload_user always optional in the cli and phpdbg SAPIs.
  • Allows W/X bits on page creation on FreeBSD despite system settings.
  • Added memfd api usage, on Linux, for zend_shared_alloc_create_lock() to create an abstract anonymous file for the opcache's lock.
  • Avoid resetting JIT counter handlers from multiple processes/threads.
  • Fixed COPY_TMP type inference for references.
OpenSSL:
  • Added OPENSSL_CMS_OLDMIMETYPE and PKCS7_NOOLDMIMETYPE contants to switch between mime content types.
  • Fixed GH-11054: Reset OpenSSL errors when using a PEM public key.
  • Added support for additional EC parameters in openssl_pkey_new.
PCNTL:
  • SA_ONSTACK is now set for pcntl_signal.
  • Added SIGINFO constant.
PCRE:
  • Update bundled libpcre2 to 10.42.
PGSQL:
  • pg_fetch_object raises a ValueError instead of an Exception.
  • pg_cancel use thread safe PQcancel api instead.
  • pg_trace new PGSQL_TRACE_SUPPRESS_TIMESTAMPS/PGSQL_TRACE_REGRESS_MODE contants support.
  • pg_set_error_verbosity adding PGSQL_ERRORS_STATE constant.
  • pg_convert/pg_insert E_WARNING on type errors had been converted to ValueError/TypeError exceptions.
  • Added pg_set_error_context_visibility to set the context's visibility within the error messages.
Phar:
  • Fix memory leak in phar_rename_archive().
POSIX:
  • Added posix_sysconf.
  • Added posix_pathconf.
  • Added posix_fpathconf.
  • Fixed zend_parse_arg_long's bool pointer argument assignment.
  • Added posix_eaccess.
Random:
  • Added Randomizer::getBytesFromString().
  • Added Randomizer::nextFloat(), ::getFloat(), and IntervalBoundary.
  • Enable getrandom() for NetBSD (from 10.x).
  • Deprecate MT_RAND_PHP.
  • Fix Randomizer::getFloat() returning incorrect results under certain circumstances.
Reflection:
  • Fix GH-9470 (ReflectionMethod constructor should not find private parent method).
  • Fix GH-10259 (ReflectionClass::getStaticProperties doesn't need null return type).
SAPI:
  • Fixed GH-11141 (Could not open input file: should be sent to stderr).
Session:
  • Fixed bug GH-11529 (Crash after dealing with an Apache request).
SimpleXML:
  • Fixed bug GH-12192 (SimpleXML infinite loop when getName() is called within foreach).
  • Fixed bug GH-12208 (SimpleXML infinite loop when a cast is used inside a foreach).
  • Fixed bug #55098 (SimpleXML iteration produces infinite loop).
Sockets:
  • Added SO_ATTACH_REUSEPORT_CBPF socket option, to give tighter control over socket binding for a cpu core.
  • Added SKF_AD_QUEUE for cbpf filters.
  • Added socket_atmark if send/recv needs using MSG_OOB.
  • Added TCP_QUICKACK constant, to give tigher control over ACK delays.
  • Added DONTFRAGMENT support for path MTU discovery purpose.
  • Added AF_DIVERT for raw socket for divert ports.
  • Added SOL_UPDLITE, UDPLITE_RECV_CSCOV and UDPLITE_SEND_CSCOV for updlite protocol support.
  • Added SO_RERROR, SO_ZEROIZE and SO_SPLICE netbsd and openbsd constants.
  • Added TCP_REPAIR for quietly close a connection.
  • Added SO_REUSEPORT_LB freebsd constant.
  • Added IP_BIND_ADDRESS_NO_PORT.
SPL:
  • Fixed GH-11573 (RecursiveDirectoryIterator::hasChildren is slow).
Standard:
  • E_NOTICEs emitted by unserialize() have been promoted to E_WARNING.
  • unserialize() now emits a new E_WARNING if the input contains unconsumed bytes.
  • Make array_pad's $length warning less confusing.
  • E_WARNING emitted by strtok in the caase both arguments are not provided when starting tokenisation.
  • password_hash() will now chain the original RandomException to the ValueError on salt generation failure.
  • Fix GH-10239 (proc_close after proc_get_status always returns -1).
  • Improve the warning message for unpack() in case not enough values were provided.
  • Fix GH-11010 (parse_ini_string() now preserves formatting of unquoted strings starting with numbers when the INI_SCANNER_TYPED flag is specified).
  • Fix GH-10742 (http_response_code emits no error when headers were already sent).
  • Added support for rounding negative places in number_format().
  • Prevent precision loss on formatting decimal integers in number_format().
  • Added usage of posix_spawn for proc_open when supported by OS.
  • Added $before_needle argument to strrchr().
  • Fixed GH-11982 (str_getcsv returns null byte for unterminated enclosure).
  • Fixed str_decrement() on "1".
Streams:
  • Fixed bug #51056: blocking fread() will block even if data is available.
  • Added storing of the original path used to open xport stream.
  • Implement GH-8641 (STREAM_NOTIFY_COMPLETED over HTTP never emitted).
  • Fix bug GH-10406 (fgets on a redis socket connection fails on PHP 8.3).
  • Implemented GH-11242 (_php_stream_copy_to_mem: Allow specifying a maximum length without allocating a buffer of that size).
  • Fixed bug #52335 (fseek() on memory stream behavior different than file).
  • Fixed bug #76857 (Can read "non-existant" files).
XSLTProcessor:
  • Fixed bug #69168 (DomNode::getNodePath() returns invalid path).
ZIP:
  • zip extension version 1.22.0 for libzip 1.10.0.
  • Add new error macros (ER_DATA_LENGTH and ER_NOT_ALLOWED).
  • Add new archive global flags (ER_AFL_*).
  • Add ZipArchive::setArchiveFlag and ZipArchive::getArchiveFlag methods.
View older PHP updates

Information

License

Free

Size

19 MB

Developer’s website

https://www.php.net/

Downloads

54425

App requirements

  • Intel 64
  • Mac OS X 10.2 or later
Try our new feature and write a detailed review about PHP. All reviews will be posted soon.

Write your thoughts in our old-fashioned comment

MacUpdate Comment Policy. We strongly recommend leaving comments, however comments with abusive words, bullying, personal attacks of any type will be moderated.
0.0

(0 Reviews of )

There are no reviews yet
  • Comments

  • User Ratings

Just-Fred
Just-Fred
Apr 19 2023
8.2.5
0.0
Apr 19 2023
0.0
Version: 8.2.5
Once again, the description given by MacUpdate is 100% wrong. This is a source code bundle and not a binary package. In order to use it, one must have Xcode installed and be able to compile it. Having found a need to use PHP to create a database-backed web site, I chose to use MacPorts (Homebrew is usually recommended, but I don't intend to install many "sidecar" Mac apps, and MacPorts seems less intrusive. On a plus note, PHP now includes its own built-in development web server, so configuring and running Apache (now called apache2 on Macs) isn't needed. A simple command: php -S <server>:<port> <optional: -t webhomedirectory> is all that's needed.
Parchment Press
Parchment Press
Dec 3 2013
5.5.6
0.0
Dec 3 2013
0.0
Version: 5.5.6
Why o why does MacUpdate track Unix software in the main Mac software channel? Just a suggestion, but i would prefer it if you had a separate tab/category for server software, daemons, CLI utilities and the like. That way, the 90% who don't use it won't have to contend with the added entries on the tracker. (I do personally use a lot of server-oriented software and CLI tools, so i would personally check that category for updates. But my preference would be to separate them out to another category listing.)
Neil-M
Neil-M
Jun 1 2011
5.3.0-3
0.0
Jun 1 2011
0.0
Version: 5.3.0-3
From the developers website; Note: The package on this page is outdated. I recommend this new PHP distribution for Mac OS X, it is based on mine: http://blog.liip.ch/archive/2011/04/13/php-5-3-for-os-x-10-6-one-line-installer.html http://php-osx.liip.ch/ - is the best source for a 10.6 version of php.
schmelding
schmelding
Sep 4 2009
5.3.0-3
0.0
Sep 4 2009
0.0
Version: 5.3.0-3
Since Snow Leopard wiped-out my install of the entropy version of PHP, does anybody know what would happen if I reinstalled this?
Neil-M
Neil-M
Jul 31 2009
5.3.0-3
0.0
Jul 31 2009
0.0
Version: 5.3.0-3
Now PHP 5.3.0-3 Thanks Marc for compiling this for OS X - it gets me an easy way to get an upto date php distro, with GD (not on Apple's vanilla inbuilt), etc. onto my server - without waiting, waiting for Apple to update.
Brian Kendig
Brian Kendig
Dec 19 2007
5.2.2
0.0
Dec 19 2007
0.0
Version: 5.2.2
The current version at http://www.entropy.ch/software/macosx/php/ is 5.2.4. This is the same version as the PHP that ships with Leopard, so there's currently no reason to try installing this on Leopard.
Vgz
Vgz
Oct 26 2007
5.2.2
0.0
Oct 26 2007
0.0
Version: 5.2.2
Warning, if you require PHP DO NOT upgrade to Leopard. This PHP installation will not work on Leopard. Hopefully an update will be made available by the developer soon.
DPoncy
DPoncy
Aug 11 2007
5.2.1
0.0
Aug 11 2007
0.0
Version: 5.2.1
I installed this package (OS 10.4.10 and Apache 1.3) and now Apache fails. How do you uninstall this?
Carla2
Carla2
Jun 5 2007
5.2.1
0.0
Jun 5 2007
0.0
Version: 5.2.1
Never said it, but have used your builds and tips for so long that it's way overdue: Thank you, Marc.
Dolphin55
Dolphin55
Mar 10 2007
5.2.1
0.0
Mar 10 2007
0.0
Version: 5.2.1
Hi, I got same error under the OSX server 10.4.8 when I try to upgrade from PHP5.0.1.
Brian Kendig
Brian Kendig
Mar 8 2007
5.2.1
0.0
Mar 8 2007
0.0
Version: 5.2.1
Note that this package will ONLY work on Mac OS 10.4, NOT 10.3! I installed it on 10.3 and the installation failed at the end, and then the Apache server would not restart because it could no longer load the php shared library. I can't find any precompiled version of PHP 5.2 available for Mac OS 10.3.
Zetsurin
Zetsurin
Dec 19 2006
5.1.4-5
5.0
Dec 19 2006
5.0
Version: 5.1.4-5
Big thanks to Marc for his excellent installers. I've found his Postgresql installer invaluable as well.
Corvus32
Corvus32
Mar 4 2006
5.1.2
0.0
Mar 4 2006
0.0
Version: 5.1.2
Since this is a binary package, it comes with a MySQL Client API version that will most likely not match the version of MySQL Server you are currently using, or would like to use in the future. Ideally, your client and server should match for best reliability, so only use this package if you don't know how to compile PHP yourself. For example, the MySQL Client that comes with this package matches MySQL 4.1.14, so if you have MySQL 5.0.18 installed, then some functions may/will fail. It may not make much difference to the average user, but just know that it is best (and recommended by mysql.com) that your mysql client api is at least current with whatever server version you use.
Guest
Guest
Sep 28 2004
5.0.1
4.8
Sep 28 2004
4.8
Version: 5.0.1
Marc's installer worked as advertised. It automatically installed php5 in an alternate directory, so it does not interfere with Darwin's preinstalled PHP version, nor prior installations of php 4.x. All the commonly used packages are supported. The only thing missing that I would like to see is a version that was precompiled for mmcache compatibility.
Cb31
Cb31
Jul 16 2004
4.3.6
0.0
Jul 16 2004
0.0
Version: 4.3.6
Perhaps it would be helpful to clarify a few things about this package. This PHP package is NOT the 4.3.6 source code from php.net. It is Marc Liyanange's distribution of the PHP 4.3.6 module for the Apache web server for MacOS X. Depending on which version of OS X your server is running, and which version of Apache web server, you may want to stick with 4.3.4. Though it states 10.2 as a requirement, this distribution package was built for MacOS X 10.3. For other information, check the "More Infomation" link.
Guest
Guest
Jun 27 2004
4.3.6
4.8
Jun 27 2004
4.8
Version: 4.3.6
I installed it fresh and it is good here.
Guest
Guest
Apr 28 2004
4.3.6
4.8
Apr 28 2004
4.8
Version: 4.3.6
don't install PHP server over an older version, it breaks Apache wer server and Itools cannot help you.
Guest
Guest
Apr 28 2004
4.3.6
4.8
Apr 28 2004
4.8
Version: 4.3.6
I installed this version on older version : FAILED apache web server is out !!!!!!!!!!!!!
Guest
Guest
Nov 13 2003
4.3.4
4.8
Nov 13 2003
4.8
Version: 4.3.4
Is it just me or does 4.3.4 seem to have eaten a few too many snails since 4.3.2? (Umm yes, I do mean slower ;-)
Guest
Guest
Sep 12 2003
4.3.3
4.8
Sep 12 2003
4.8
Version: 4.3.3
Anonymous, it is not available for OS9 because PHP relies on many Unix features which do not exist in OS9. PHP rocks!
Sandro-Bilbeisi
Sandro-Bilbeisi
Nov 14 2014
5.0
Nov 14 2014
5.0
Version: null
BlakeC6588
BlakeC6588
Oct 15 2013
5.0
Oct 15 2013
5.0
Version: null
Sparrowhawk
Sparrowhawk
Sep 16 2013
5.0
Sep 16 2013
5.0
Version: null
olamaekle
olamaekle
Aug 6 2013
5.0
Aug 6 2013
5.0
Version: null
Zetsurin
Zetsurin
Dec 19 2006
5.0
Dec 19 2006
5.0
Version: null
Guest
Guest
Sep 28 2004
4.8
Sep 28 2004
4.8
Version: null
Guest
Guest
May 18 2003
5.0
May 18 2003
5.0
Version: null
Free
Absolutely Free
How would you rate PHP?
Similar apps
Python
Object-oriented programming language.
Is this app is similar to Python? Vote to improve the quality of this list.
Vote results
1
Upvotes
1
Total score
0
Downvotes
LiveCode Community Edition
Cross-platform, open-source development environment (was Revolution Media).
Is this app is similar to LiveCode Community Edition? Vote to improve the quality of this list.
Vote results
1
Upvotes
1
Total score
0
Downvotes
MAMP
Create a local server environment.
Is this app is similar to MAMP? Vote to improve the quality of this list.
Vote results
1
Upvotes
1
Total score
0
Downvotes
XAMPP
Complete Web server solution.
Is this app is similar to XAMPP? Vote to improve the quality of this list.
Vote results
0
Upvotes
1
Total score
0
Downvotes
AMPPS
Auto-install stack with Apache, Mysql, PHP, Perl, Python.
Is this app is similar to AMPPS? Vote to improve the quality of this list.
Vote results
0
Upvotes
1
Total score
0
Downvotes