Compatibility center

IonCube decoder versions and PHP runtime matrix

Choose the encoder generation and PHP runtime that match your authorized file. Automatic detection is available, while manual profiles give repeatable routing for known projects.

v10

IonCube v10 decoder

IonCube v10 projects are commonly tied to older hosting stacks and extensions. The v10 route keeps those files away from newer PHP 8 runtimes and uses the legacy decoder profiles that match their execution model.

PHP 5.6 legacy lane
PHP 7.1
PHP 7.2
Read v10 guide
v11

IonCube v11 decoder

IonCube v11 spans multiple PHP 7 runtime generations. Correct routing matters because a file targeting PHP 7.1 or 7.2 should not be interpreted with the same runtime assumptions as a PHP 7.4 build.

PHP 7.1
PHP 7.2
PHP 7.4
Read v11 guide
v12

IonCube v12 decoder

IonCube v12 sits at the PHP 7 to PHP 8 transition. The service isolates those major runtime families instead of assuming that a PHP 7.4 target can execute under PHP 8.1.

PHP 7.4
PHP 8.1
legacy compatibility profiles
Read v12 guide
v13

IonCube v13 decoder

The v13 route covers both PHP 7.4-era packages and newer PHP 8 applications. Header hints, loader behavior and the captured method inventory are combined to select and verify the recovery path.

PHP 7.4
PHP 8.1
PHP 8.2
Read v13 guide
v14

IonCube v14 decoder

IonCube v14 files are routed through PHP 8 runtime-specific profiles. This avoids the common failure mode where a syntactically valid but incomplete result is returned from the wrong loader/runtime pair.

PHP 8.1
PHP 8.2
PHP 8.3
PHP 8.4 compatibility profile
Read v14 guide
v15

IonCube v15 decoder

IonCube v15 is handled by the newest PHP 8 runtime lanes in the unified matrix. The engine profile is selected explicitly when known, or inferred from file/runtime signals before recovery starts.

PHP 8.2
PHP 8.3
PHP 8.4
Read v15 guide

Not sure which version to choose?

Leave the profile on IonCube Version Auto Select. The upload route evaluates file hints and compatible runtime lanes, while final validation rejects unchanged wrappers and incomplete output.

Try a limited preview