Hypertext Preprocessor is a general-purpose programming language!

PHP for Mac

PHP for Mac

  -  20.7 MB  -  Open Source
PHP for Mac is a popular general-purpose scripting language that is especially suited to web development. Fast, flexible and pragmatic, PHP for macOS powers everything from your blog to the most popular websites in the world.

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
PROS
  • Easy installation with Homebrew
  • Native macOS support for Apache
  • Strong community and documentation
  • Compatible with popular IDEs
  • Great for local web development
CONS
  • 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
Also Available: Download PHP for Windows

Why is this app published on FileHorse? (More info)

What's new in this version:

BcMath:
- Fixed bug GH-18641 (Accessing a BcMathNumber property by ref crashes)

Core:
- Fixed bugs GH-17711 and GH-18022 (Infinite recursion on deprecated attribute evaluation) and GH-18464 (Recursion protection for deprecation constants not released on bailout)
- Fixed GH-18695 (zend_ast_export() - float number is not preserved)
- Fix handling of references in zval_try_get_long()
- Do not delete main chunk in zend_gc
- Fix compile issues with zend_alloc and some non-default options

Curl:
- Fix memory leak when setting a list via curl_setopt fails

Date:
- Fix leaks with multiple calls to DatePeriod iterator current()

DOM:
- Fixed bug GH-18744 (classList works not correctly if copy HTMLElement by clone keyword)

FPM:
- Fixed GH-18662 (fpm_get_status segfault)

Hash:
- Fixed bug GH-14551 (PGO build fails with xxhash)

Intl:
- Fix memory leak in intl_datetime_decompose() on failure
- Fix memory leak in locale lookup on failure

Opcache:
- Fixed bug GH-18743 (Incompatibility in Inline TLS Assembly on Alpine 3.22)

ODBC:
- Fix memory leak on php_odbc_fetch_hash() failure

OpenSSL:
- Fix memory leak of X509_STORE in php_openssl_setup_verify() on failure
- Fixed bug #74796 (Requests through http proxy set peer name)

PGSQL:
- Fixed GHSA-hrwm-9436-5mv3 (pgsql extension does not check for errors during escaping)
- Fix warning not being emitted when failure to cancel a query with pg_cancel_query()

PDO ODBC:
- Fix memory leak if WideCharToMultiByte() fails

PDO Sqlite:
- Fixed memory leak with Pdo_Sqlite::createCollation when the callback has an incorrect return type

Phar:
- Add missing filter cleanups on phar failure
- Fixed bug GH-18642 (Signed integer overflow in ext/phar fseek)

PHPDBG:
- Fix 'phpdbg --help' segfault on shutdown with USE_ZEND_ALLOC=0

Random:
- Fix reference type confusion and leak in user random engine

Readline:
- Fix memory leak when calloc() fails in php_readline_completion_cb()

SimpleXML:
- Fixed bug GH-18597 (Heap-buffer-overflow in zend_alloc.c when assigning string with UTF-8 bytes)

SOAP:
- Fix memory leaks in php_http.c when call_user_function() fails
- Fixed GHSA-453j-q27h-5p8x (NULL Pointer Dereference in PHP SOAP Extension via Large XML Namespace Prefix)

Standard:
- Fixed GHSA-3cr5-j632-f35r (Null byte termination in hostnames)

Tidy:
- Fix memory leak in tidy output handler on error
- Fix tidyOptIsReadonly deprecation, using tidyOptGetCategory