Getting Started
Requirements
Read this page to get up to speed on what may be required. It can depend on which components you decide to use.
PHP and Composer#
PHP 8.4.0 or newer, and Composer. Every v7 component declares strict_types=1 in every source file
and requires >= 8.4.0, so there's no partial upgrade path and no component that still runs on 8.3. CI
runs the suite on PHP 8.4 and 8.5.
Extensions Composer Enforces#
Six extensions are hard require entries rather than suggestions, so Composer resolves against them at
install time instead of letting you discover them at runtime:
| Extension | Required by | Present in |
|---|---|---|
ext-curl |
pop-http |
core and full framework |
ext-json |
pop-utils |
core and full framework |
ext-dom |
pop-dom |
full framework |
ext-gd |
pop-image |
full framework |
ext-openssl |
pop-crypt |
full framework |
ext-sodium |
pop-crypt |
full framework |
Extensions Each Component Would Like#
These are suggest entries. Composer never enforces them, an installation completes without them, and nothing
warns you at any point — so this table is the one to read against what you actually plan to use:
| For | Extensions | Wanted by |
|---|---|---|
| Databases | ext-pdo, ext-mysqli, ext-pgsql, ext-sqlite3 |
pop-db |
| Images | ext-imagick, ext-ctype |
pop-image |
| PDFs | ext-imagick, ext-iconv, ext-mbstring, ext-zlib |
pop-pdf |
| Queues | ext-redis |
pop-queue |
| Caching | ext-apcu, ext-redis, ext-memcached |
pop-cache |
| HTTP | ext-zlib, ext-mbstring, ext-simplexml |
pop-http |
| Config and locale files | ext-simplexml, ext-libxml |
pop-config, pop-i18n, pop-form |
See Also#
- Installation — the install itself, in one command
- Connecting to a Database — picking a driver and testing the connection
- Cache — which cache adapter to use, and what each one needs