import{_ as t,c as d,o as e,a1 as s}from"./chunks/framework.CszIUXhs.js";const u=JSON.parse('{"title":"Extensions","description":"","frontmatter":{},"headers":[],"relativePath":"en/guide/extensions.md","filePath":"en/guide/extensions.md"}'),r={name:"en/guide/extensions.md"},y=s('
yes: supported- blank: not supported yet, or WIP
nowith issue link: confirmed to be unavailable due to issuepartialwith issue link: supported but not perfect due to issue
| Extension Name | Linux | macOS | FreeBSD | Windows |
|---|---|---|---|---|
| amqp | yes | yes | yes | |
| apcu | yes | yes | yes | yes |
| bcmath | yes | yes | yes | yes |
| bz2 | yes | yes | yes | yes |
| calendar | yes | yes | yes | yes |
| ctype | yes | yes | yes | yes |
| curl | yes | yes | yes | yes |
| dba | yes | yes | yes | yes |
| dom | yes | yes | yes | |
| ds | yes | yes | yes | yes |
| enchant | ||||
| event | yes | yes | ||
| exif | yes | yes | yes | yes |
| ffi | no | yes | yes | |
| fileinfo | yes | yes | yes | yes |
| filter | yes | yes | yes | yes |
| ftp | yes | yes | yes | yes |
| gd | yes | yes | yes | |
| gettext | yes | yes | ||
| glfw | no | yes | no | |
| gmp | yes | yes | ||
| iconv | yes | yes | yes | |
| igbinary | yes | yes | yes | |
| imagick | yes | yes | ||
| imap | yes | yes | ||
| inotify | yes | no | no | |
| intl | yes | yes | no | |
| ldap | yes | yes | ||
| libxml | yes | yes | yes | |
| mbregex | yes | yes | yes | yes |
| mbstring | yes | yes | yes | yes |
| mcrypt | no | no | no | no |
| memcache | yes | yes | ||
| memcached | no | yes | ||
| mongodb | yes | yes | ||
| mysqli | yes | yes | yes | yes |
| mysqlnd | yes | yes | yes | yes |
| oci8 | no | no | no | |
| opcache | yes | yes | yes | yes |
| openssl | yes | yes | yes | yes |
| parallel | yes | yes | yes | |
| password-argon2 | yes | yes | ||
| pcntl | yes | yes | yes | no |
| pdo | yes | yes | yes | yes |
| pdo_mysql | yes | yes | yes | yes |
| pdo_pgsql | yes | yes | ||
| pdo_sqlite | yes | yes | yes | |
| pdo_sqlsrv | yes | yes | yes | |
| pgsql | yes | yes | ||
| phar | yes | yes | yes | yes |
| posix | yes | yes | yes | no |
| protobuf | yes | yes | ||
| rar | yes | partial | yes | |
| readline | yes | yes | ||
| redis | yes | yes | yes | |
| session | yes | yes | yes | yes |
| shmop | yes | yes | yes | yes |
| simdjson | yes | yes | yes | yes |
| simplexml | yes | yes | yes | |
| snappy | yes | yes | ||
| soap | yes | yes | yes | |
| sockets | yes | yes | yes | yes |
| sodium | yes | yes | ||
| spx | yes | yes | no | |
| sqlite3 | yes | yes | yes | |
| sqlsrv | yes | yes | yes | |
| ssh2 | yes | yes | yes | |
| swoole | yes | yes | no | |
| swoole-hook-mysql | yes | yes | no | |
| swoole-hook-pgsql | yes | partial | no | |
| swoole-hook-sqlite | yes | yes | no | |
| swow | yes | yes | yes | |
| sysvmsg | yes | yes | no | |
| sysvsem | yes | yes | no | |
| sysvshm | yes | yes | yes | |
| tidy | yes | yes | ||
| tokenizer | yes | yes | yes | yes |
| uuid | yes | yes | ||
| uv | yes | yes | ||
| xdebug | no | no | no | |
| xhprof | yes | yes | ||
| xlswriter | yes | yes | ||
| xml | yes | yes | yes | |
| xmlreader | yes | yes | yes | |
| xmlwriter | yes | yes | yes | |
| xsl | yes | yes | ||
| yac | yes | yes | yes | |
| yaml | yes | yes | yes | |
| zip | yes | yes | yes | |
| zlib | yes | yes | yes | yes |
| zstd | yes | yes |
TIP
If an extension you need is missing, you can create a Feature Request.
Some extensions or libraries that the extension depends on will have some optional features. For example, the gd library optionally supports libwebp, freetype, etc. If you only use bin/spc build gd --build-cli they will not be included (static-php-cli defaults to the minimum dependency principle).
You can use --with-libs= to add these libraries when compiling. When the dependent libraries of this compilation include them, gd will automatically use them to enable these features. (For example: bin/spc build gd --with-libs=libwebp,freetype --build-cli)
Alternatively you can use --with-suggested-exts and --with-suggested-libs to enable all optional dependencies of these extensions and libraries. (For example: bin/spc build gd --with-suggested-libs --build-cli)
If you don't know whether an extension has optional features, you can check the spc configuration file or use the command bin/spc dev:extensions (library dependency is lib-suggests, extension dependency is ext-suggests).