Extensions
Every build carries this set. It is the supported surface: a statically linked
PHP cannot dlopen arbitrary extensions, so pecl install <anything> does
not work against these builds.
- apcu
- bcmath
- bz2
- calendar
- ctype
- curl
- dom
- exif
- ffi
- fileinfo
- filter
- ftp
- gd
- imagick
- gettext
- gmp
- iconv
- igbinary
- intl
- ldap
- mbstring
- mbregex
- msgpack
- mysqli
- mysqlnd
- opcache
- openssl
- password-argon2
- pcntl
- pdo
- pdo_mysql
- pdo_pgsql
- pgsql
- phar
- posix
- readline
- redis
- mongodb
- session
- shmop
- simplexml
- soap
- sockets
- sodium
- sqlite3
- pdo_sqlite
- ssh2
- sysvmsg
- sysvsem
- sysvshm
- tidy
- tokenizer
- uuid
- xml
- xmlreader
- xmlwriter
- xsl
- yaml
- zip
- zlib
Shared
Section titled “Shared”- xdebug — shipped as
lib/xdebug.so, because it cannot be linked statically. Loaded withxdebug.mode = off; setXDEBUG_MODEto enable it for a single invocation, which Xdebug honors over any ini value.
Not included, deliberately
Section titled “Not included, deliberately”- sqlsrv — Microsoft’s ODBC driver is dylib-only on macOS.
- pcov — shared-only, like Xdebug. Use
xdebug.mode=coverage.
Removed on older lines
Section titled “Removed on older lines”Some extensions require a newer PHP than the line they would ship on, so they are dropped rather than failing the build:
- PHP 7.4 — opcache, mongodb, password-argon2
- PHP 8.0 — mongodb, password-argon2
Verification diffs php -m against the requested list on every build, so a
silently dropped extension fails the build rather than reaching you.